我有一张如下所示的表格:
\begin{table}[h]
\centering
\caption{MYCaption}
\label{tbl:table1}
\begin{tabular}{|l|l|l|l|}
\hline
\rowcolor[gray]{.8}
\multicolumn{4}{|c|}{Team 1}\\
\hline
\textbf{Caption1} & \textbf{Caption 2} & \textbf{Caption3} & \textbf{Caption 4}\\
\hline
Some values & Some values & Some values & Some values\\
\hline
\rowcolor[gray]{.8}
\multicolumn{4}{|c|}{Team 2}\\
\hline
\textbf{Caption1} & \textbf{Caption 2} & \textbf{Caption3} & \textbf{Caption 4}\\
\hline
Some values & Some values & Some values & Some values\\
\hline
\end{tabular}
\end{table}
我也有两列布局,但表格横跨两列。但是,目前表格对于页面宽度来说太宽了。现在我希望字体大小能够自动调整,以便表格始终适合页面。我找到的解决方案无法做到这一点,因为它们使用换行符来适应表格。我不想要换行符。
答案1
您可以\resizebox
使用graphicx
包。下面是一个展示使用和不使用的表格的小例子,\resizebox
用于比较(我[!ht]
在这个例子中使用了):
\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum}% just to generate filler text
\begin{document}
\lipsum[2]
\begin{table}[!ht]
\centering
\caption{Test caption}
\label{tbl:table1}
\begin{tabular}{|l|l|l|l|}
\hline
Some really reallly long values &
Some really reallly long values &
Some really reallly long values &
Some really reallly long values \\
\hline
\end{tabular}
\end{table}
\lipsum[2]
\begin{table}[!ht]
\centering
\caption{Test caption}
\label{tbl:table2}
\resizebox{\textwidth}{!}{%
\begin{tabular}{|l|l|l|l|}
\hline
Some really reallly long values &
Some really reallly long values &
Some really reallly long values &
Some really reallly long values \\
\hline
\end{tabular}}
\end{table}
\end{document}
答案2
如果使用双列模式,则可以通过使用星号来获得同时使用两列的宽表\begin{table}
:
\begin{table*}
您的表格采用两列布局,其中表格使用两列:
\documentclass[a4paper,twocolumn]{article}
\usepackage{lipsum,colortbl,graphicx}
\begin{document}
\lipsum[2-10]
\begin{table*}
\centering
\caption{MYCaption}
\label{tbl:table1}
\resizebox{\linewidth}{!}{\begin{tabular}{|l|l|l|l|}
\hline
\rowcolor[gray]{.8}
\multicolumn{4}{|c|}{Team 1}\\
\hline
\textbf{Caption1} & \textbf{Caption 2} & \textbf{Caption3} & \textbf{Caption 4}\\
\hline
Some values & Some values & Some values & Some values\\
\hline
\rowcolor[gray]{.8}
\multicolumn{4}{|c|}{Team 2}\\
\hline
\textbf{Caption1} & \textbf{Caption 2} & \textbf{Caption3} & \textbf{Caption 4}\\
\hline
Some values & Some values & Some values & Some values\\
\hline
\end{tabular}
}
\end{table*}
\lipsum[2-10]
\end{document}