![表格超出边距:有什么建议吗?](https://linux22.com/image/295823/%E8%A1%A8%E6%A0%BC%E8%B6%85%E5%87%BA%E8%BE%B9%E8%B7%9D%EF%BC%9A%E6%9C%89%E4%BB%80%E4%B9%88%E5%BB%BA%E8%AE%AE%E5%90%97%EF%BC%9F.png)
我尝试将一个非常大的表格放入 pdf 中:
\begin{table}
\begin{center}
\caption{ \textit{Title}. Some comments.}
\begin{tabular}{llllllll}
\hline
Parameter & bbbbbb & cccccc & dddddd & eeeee & fffff & gggggg & hhhhh \\ \hline
Parameter 1 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 \\
Parameter 2 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 3 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 4 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 \\
Parameter ... & ..... & ..... & ..... & ..... & ..... & ..... & ..... \\ \hline
\end{tabular}
\end{center}
\end{table}
我读了帮助表格超出边界但我无法找到一种非常简单的方法来显示此表格,因为在这种情况下表格也会超出边缘。也许我使用时犯了一些错误\sisetup{table-format=1.4e06,exponent-product = \cdot}
。
您能帮我找到解决方案吗?
谢谢。
答案1
作为一种选择,您可以使用adjustbox
包并提供。max width
然后1.1\textwidth
,仅当表的宽度大于时,表才会限制为该宽度1.1\textwidth
。还可以使用center
选项使该表居中。
\documentclass[a4paper]{article}
\usepackage{adjustbox}
\usepackage{kantlipsum} %% just for demo
\usepackage{showframe} %% just for demo
\begin{document}
\kant[1]
\begin{table}[htb]
\caption{ \textit{Title}. Some comments.}
\begin{adjustbox}{max width=1.1\textwidth,center}
\begin{tabular}{llllllll}
\hline
Parameter & bbbbbb & cccccc & dddddd & eeeee & fffff & gggggg & hhhhh \\ \hline
Parameter 1 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 \\
Parameter 2 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 3 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 4 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 \\
Parameter ...& ..... & ..... & ..... & ..... & ..... & ..... & ..... \\ \hline
\end{tabular}
\end{adjustbox}
\end{table}
\kant[2]
\end{document}
由于您的表格的宽度不超过1.1\textwidth
,因此不会调整其大小。
另一个选择是使用\makebox
\documentclass[a4paper]{article}
\usepackage{kantlipsum} %% just for demo
\usepackage{showframe} %% just for demo
\begin{document}
\kant[1]
\begin{table}[htb]
\caption{ \textit{Title}. Some comments.}
\makebox[\textwidth][c]{%
\begin{tabular}{llllllll}
\hline
Parameter & bbbbbb & cccccc & dddddd & eeeee & fffff & gggggg & hhhhh \\ \hline
Parameter 1 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 \\
Parameter 2 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 3 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 4 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 \\
Parameter ...& ..... & ..... & ..... & ..... & ..... & ..... & ..... \\ \hline
\end{tabular}
}
\end{table}
\kant[2]
\end{document}
答案2
轻松识别坏框的一个好方法是使用大多数文档类的草稿选项,该选项会在每个超载框的右侧打印一个黑框。
下面的代码显示了坏盒子在哪里:
\documentclass[a4paper,draft]{article}
\begin{document}
\begin{table}
\caption{ \textit{Title}. Some comments.}
\centering
\begin{tabular}{llllllll}
\hline
Parameter & bbbbbb & cccccc & dddddd & eeeee & fffff & gggggg & hhhhh \\ \hline
Parameter 1 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 \\
Parameter 2 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 3 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 4 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 \\
Parameter ...& ..... & ..... & ..... & ..... & ..... & ..... & ..... \\ \hline
\end{tabular}
\end{table}
\end{document}
溢出的框用右侧的黑色框表示,如下所示:
错误信息显示:
Overfull \hbox (24.80644pt too wide) in paragraph at lines 7--16
在这种情况下,您可以简单地腾出 25pt 的额外空间,而无需缩小表格。我根据错误消息选择了 25pt。操作方法如下:
\documentclass[a4paper,draft]{article}
\begin{document}
\begin{table}
\caption{ \textit{Title}. Some comments.}
\centering
\begin{tabular}{llllllll}
\hline
Parameter & bbbbbb & cccccc & dddddd & eeeee & fffff & gggggg & hhhhh \\ \hline
Parameter 1 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 & 111111 \\
Parameter 2 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 3 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\
Parameter 4 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 & 444444 \\
Parameter ...& ..... & ..... & ..... & ..... & ..... & ..... & ..... \\ \hline
\end{tabular}\hspace*{-25pt}
\end{table}
\end{document}
然后表格看起来就像这样(没有任何警告):