LaTeX 表中の改行

tabular環境のカラム内で改行する。

  1. p{幅}を使う。

    最も基本的。幅の部分には \columnwidth に対する倍率を 指定するのが楽かな。

    \begin{tabular}{|c|p{0.8\columnwidth}|}
     \hline
     見出し1 & 嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼ああああ
     ああああ長文
     \par 次のパラグラフ…\\\hline
     見出し2 & いいいいいいいいいいいいいいいいいいいいいいいいいい
         いいいいいいいいいい\\\hline
    \end{tabular}
    

    これがこんな感じ。

    見出し1 嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼嗚呼 ああああああああ長文
    次のパラグラフ…
    見出し2 いいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいいい
  2. \parboxを使う。

    tabular の l とかで確保しちゃったカラムでは、 \parbox を使う。幅を自動で決めてくれないのが難点。 適当に幅指定する。

    \begin{tabular}{|c|l|}
     \hline
     ほげ & 
     \parbox[t]{0.7\columnwidth}{aaaあああああああああああああああああ
     あああああああああああああああああああああああああああああああ
     あああああああああああああああああああああああああああああああ
     ああ\\ どうだい}
     \\\hline
    \end{tabular}
    

    \parbox内なら改段落は \par でも \\ でもOK。\columnwidth は多段組みを考慮した「1行の幅」。 0.7とかだと左カラムの幅でずれて来てしまうのでこんな風にすることも ある。

    \newlength{\rightcol}
    \setlength{\rightcol}{\columnwidth}
    \addtolength{\rightcol}{-5zw}
    

    として \parbox{\rightcol}{....} としたり。

CSSに慣れると幅指定が嫌な感じだが、紙志向なので幅はびちっと決めた方が 現実的なのかな。なんにせよ面倒だ。でも慣れちゃえばどうってことない。