LaTeXでテーブル(表)のキャプションをカスタマイズする

LaTeXの表(table環境)でキャプションを左寄せにするなど,カスタマイズする法について.

具体的には

こういう表を

こんな感じにしたい.
(例としてキャプションを左寄せ,「表2」を太字にしてその後にピリオドを付加)

解決法

threeparttableパッケージとcaptionパッケージを使用する.どちらもTeXLiveにはデフォルトで入ってるはず.

\documentclass[uplatex,a4j]{jsarticle}

\usepackage{threeparttable}
\usepackage{caption}
\captionsetup[table]{labelsep=period, labelfont=bf, justification=raggedright, singlelinecheck=off}


\begin{document}

\begin{table}[ht]
    \centering
    \begin{threeparttable} 
        \caption{キャプションが左寄せの表}
        \begin{tabular}{|l|l|l|l|}
            \hline
            ほげほげほげ & ほげほげほげ & ほげほげほげ & ほげほげほげ \\ \hline
            ああああ & いいいい & うううう & ええええ \\ \hline
        \end{tabular}
    \end{threeparttable} 
\end{table}

\end{document}

こんな感じ.

キャブションをカスタマイズするには\captionsetup[table]{labelsep=period, labelfont=bf, justification=raggedright, singlelinecheck=off}の部分をいじれば良い.簡単に解説すると

  • labelsep: 「表n」部分とそれ以降のテキスト部分の間を何で区切るか.period(ピリオド)以外にもspace(スペース),colon(コロン),newline(改行)などがある.
  • labelfont: 「表n」部分のフォントをどうするか.bf(太字)以外にも斜体にしたりフォントサイズを変えたり色々できる.テキスト部分も一緒に変えたい場合はfontを,テキスト部分のみ変えたい場合はtextfontを使う.
  • justification:キャプションをどこに寄せるか.ややこしいようだがraggedrightで左,centeringで中央,raggedleftで右に寄せられる.
  • singlelinecheck: LaTeXのドキュメントクラスはキャプションが1行の場合,自動的に中央に寄せるようになる.それをoffでオフにする.上記のjustificationを使用する場合,ほとんどの場合で必須.

このほかにもマージンのカスタマイズなど,様々なオプションが用意されているので,詳しくは公式ドキュメントを参照して欲しい.

コメントを残す

メールアドレスが公開されることはありません。