我尝试将表定义为新环境。
\newenvironment{scaledtable}[1]{%
\begin{table}[h]
\caption{xxx}
\label{tab:xxx}
\begin{center}
\begin{tabular}{rcrrrrrrrrrrrrcc}
}{
\hline
\end{tabular}
\end{center}
\end{table}}
我遇到的问题是我无法使用scalebox {}。如果我将结束括号放入环境的最终定义中,则乳胶不能再分配括号。由于pdflatex,我也不能使用PStricks。
答案 0 :(得分:3)
使用\lrbox
临时存储表格,然后缩放
\newsavebox{\scaledtablebox}
\newcommand*{\scaledtablefactor}{1}
\newenvironment{scaledtable}[1]{%
\renewcommand*{\scaledtablefactor}{#1}%
\begin{table}[h]%
\caption{xxx}%
\label{tab:xxx}%
%
\begin{lrbox}{\scaledtablebox}%
\begin{tabular}{ll}%
}{%
\hline%
\end{tabular}%
\end{lrbox}%
%
\begin{center}%
\scalebox{\scaledtablefactor}{\usebox{\scaledtablebox}}%
\end{center}%
\end{table}%
}
这样工作(0.5
是比例因子):
\begin{scaledtable}{0.5}
Hello & World! \\
\end{scaledtable}