
結合された列を持つセルを作成しようとしていますが、正しい幅のセルが生成されません。c
またはl
をr
配置パラメータとして使用すると、セル内のテキストがセル幅より小さい場合は完全に機能しますが、テキストが数語を超える場合は右余白がオーバーフローします。 この問題を解決するために、p{with}
配置パラメータとして使用していますが、何らかの理由でセル幅が小さいセルが生成されます。
以下の例では0.84*4+0.97
一致しています4.33
が、期待した結果は生成されません。
\begin{table}[H]
\begin{tabular}{p{0.97in}p{0.84in}p{0.84in}p{0.84in}p{0.84in}}
\multicolumn{1}{p{0.97in}}{\cellcolor[HTML]{FFFFFF}} &
\multicolumn{1}{p{0.84in}}{\cellcolor[HTML]{CCCCCC}\Centering {\fontsize{10pt}{12.0pt}\selectfont col-head-1}} &
\multicolumn{1}{p{0.84in}}{\cellcolor[HTML]{CCCCCC}\Centering {\fontsize{10pt}{12.0pt}\selectfont col-head-2}} &
\multicolumn{1}{p{0.84in}}{\cellcolor[HTML]{CCCCCC}\Centering {\fontsize{10pt}{12.0pt}\selectfont col-head-3}} &
\multicolumn{1}{p{0.84in}}{\cellcolor[HTML]{CCCCCC}\Centering {\fontsize{10pt}{12.0pt}\selectfont col-head-4}} \\
\multicolumn{1}{p{0.97in}}{\cellcolor[HTML]{CCCCCC}\Centering {\fontsize{10pt}{12.0pt}\selectfont row-1}} &
\multicolumn{1}{p{0.84in}}{\Centering YES} &
\multicolumn{1}{p{0.84in}}{\Centering NO} &
\multicolumn{1}{p{0.84in}}{\Centering YES} &
\multicolumn{1}{p{0.84in}}{\Centering YES} \\
\multicolumn{5}{p{4.33in}}{\Centering \cellcolor[HTML]{CCCCCC}{\textbf{ Some random long text, Some random long text, Some random long text,}}} \\
\end{tabular}
\end{table}
答え1
5つの使用可能な幅の合計個人列は確かにそうです0.84in*4+0.97in=4.33in
。
\tabcolsep
ただし、各セルの左右には( )の空白スペースがあるため、組み合わせ5 つのセルのうち です4.33in+8\tabcolsep
。
この事実を活用するには、
\multicolumn{5}{p{4.33in}}{...}
に
\multicolumn{5}{p{\dimexpr4.33in+8\tabcolsep\relax}}{...}
の値は、\tabcolsep
通常、ドキュメント クラスによって設定されます。「標準」の LaTeX ドキュメント クラス ( article
、、report
)は、値として をbook
使用します。6pt
答え2
主な問題は @Mico の回答で解決されましたが、他の問題にも対処したいと思います。表には多くのノイズと不要な繰り返しコマンドがあります。LaTeX では、頻繁に使用する操作を実行するための独自のショートカット マクロを定義できます。試すことができる変更の一覧を次に示します。
- 色付きのセルに新しいマクロを定義します。
\CC{..}
たとえば、 - 代わりに
\centering
列タイプを削除して定義するC
- 削除し
\fontsize{10pt}{12.0pt}\selectfont
て使用する\small
か\footnotesize
- 最初に削除します
\cellcolor[HTML]{FFFFFF}
。デフォルトは白です。 \multicolumn
不要なものを削除する[!htbp]
の代わりに使用し[H]
、LaTeXにテーブルの推奨位置を決定させる方が良いでしょう。- columntypeの代わりに
tabularx
automaticを試すこともできますhsize
p
テーブルのクリーンアップされたバージョンは次のとおりです。
\documentclass[12pt,a4paper]{article}
%\usepackage{colortbl,xcolor} % OR
\usepackage[table]{xcolor} % see Mico's comment below
\begin{document}
\newcommand{\CC}[1]{\cellcolor[HTML]{CCCCCC}{#1}}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
\begin{table}
\begin{tabular}{C{0.97in}C{0.84in}C{0.84in}C{0.84in}C{0.84in}}
& \CC{\small col-head-1} & \CC{\small col-head-2} & \CC{\small col-head-3} & \CC{\small col-head-4} \\
\CC{\small row-1} & YES & NO & YES & YES \\
\multicolumn{5}{C{\dimexpr4.33in+8\tabcolsep\relax}}{\CC{\textbf{Some random long text, Some random long text, Some random long text,}}}
\end{tabular}
\end{table}
\end{document}