我的表格很长,因为它们有 9 到 25 列。它们甚至不适合横向布局的页面。我尝试使用 resizebox 调整它们的大小,正如建议的那样这里但它总是引发错误。
这是我的 LaTeX 文件中的内容:
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{table}[ht]
\resizebox{\linewidth}{!}{%
\centering
\settowidth\mywidth{\textbf{\MakeUppercase{TABLENAME}}}
\begin{minipage}[t]{\mywidth}
\mbox{}\par
\textbf{\MakeUppercase{TABLENAME}}
\end{minipage}
%\[
\begin{tabular}[t]{ccccccccc}
\toprule
\multicolumn{1}{c}{\textbf{column 1}} & \multicolumn{1}{c}{column 2}} & \multicolumn{1}{c}{column 3} & \multicolumn{1}{c}{column 4} & \multicolumn{1}{c}{column 5} & \multicolumn{1}{c}{column 6} & \multicolumn{1}{c}{column 7} & \multicolumn{1}{c}{\textbf{column 8}} & \multicolumn{1}{c}{\textbf{column 9}}\\
\midrule
value & value & value & value & value & value & value & value & value \\
\bottomrule
\end{tabular}
%\]
\caption{My Caption}
\label{tbl:verylongtable}
}
\end{table}
\end{document}
我得到的例外是
pdflatex> ! You can't use '\hrule' here except with leaders
当我尝试将整个表格环境放入调整大小框中(而不仅仅是表格环境内的代码)时,出现错误:
pdflatex> ! Not in outer par mode
我该如何缩放我的桌子呢?我还没有找到可行的解决方案。另一个附带问题:我读到
\resizebox{\columnwidth}{!}{%
很%
重要。为什么?我只知道百分号是注释的开头。
答案1
\resizebox
是一个水平模式命令(如\mbox
),因此它可以采用tabular
但不能采用垂直材料\centering
。
另外,在发布之前请测试您的示例,其中有未定义的命令和}
与所提问题无关的额外内容。
\documentclass{article}
\usepackage{graphicx}
\usepackage{booktabs}%grrr
\begin{document}
\newlength\mywidth%grrr
\begin{table}[ht]
\centering
\settowidth\mywidth{\textbf{\MakeUppercase{TABLENAME}}}
\begin{minipage}[t]{\mywidth}
\mbox{}\par
\textbf{\MakeUppercase{TABLENAME}}
\end{minipage}
\resizebox{\linewidth}{!}{\begin{tabular}[t]{ccccccccc}
\toprule
\multicolumn{1}{c}{\textbf{column 1}} & \multicolumn{1}{c}{column 2}
%grr}
& \multicolumn{1}{c}{column 3} & \multicolumn{1}{c}{column 4} & \multicolumn{1}{c}{column 5} & \multicolumn{1}{c}{column 6} & \multicolumn{1}{c}{column 7} & \multicolumn{1}{c}{\textbf{column 8}} & \multicolumn{1}{c}{\textbf{column 9}}\\
\midrule
value & value & value & value & value & value & value & value & value \\
\bottomrule
\end{tabular}}
\caption{My Caption}
\label{tbl:verylongtable}
\end{table}
\end{document}