我正在尝试让表格在横向页面中垂直和水平居中。我尝试了这里提出的一些解决方案,但在我的特定情况下无法使它们发挥作用。
这是我的代码:
\documentclass{article}
\usepackage{float,lscape}
\begin{document}
\begin{landscape}
\begin{table}[htb!]
\centering
\tiny
\setlength{\tabcolsep}{2pt}
\begin{tabular}{|ll|*4r|*4r|*4r|*4r|*4r|}
% ...
\end{tabular}
\caption{A very wide table}
\label{tab:wide_table}
\end{table}
\end{landscape}
\end{document}
答案1
只是为了尝试提供一个最小的工作示例,我想提出以下内容,并在提问者的意见中添加评论中的建议。
\documentclass{article}
\usepackage{float,lscape}
\begin{document}
\begin{landscape}
\begin{table}[p]
\centering
\tiny
\setlength{\tabcolsep}{2pt}
\begin{tabular}{|ll|*4r|*4r|*4r|*4r|*4r|}
% ...
\end{tabular}
\caption{A very wide table}
\label{tab:wide_table}
\end{table}
\end{landscape}
\end{document}
在这里,我假设包lscape
用于景观环境,而float
对于[htb!]
参数,正如 David Carlisle 指出的那样,它被更改[p]
为垂直对齐。
这也许对于表格和图形(不接受参数[p]
)以外的其他东西的垂直居中也很实用,这是另一个例子。
\documentclass{article}
\usepackage{float,lscape}
\begin{document}
\begin{landscape}
\topskip0pt
\vspace*{\fill}
\begin{table}[htb!]
\centering
\tiny
\setlength{\tabcolsep}{2pt}
\begin{tabular}{|ll|*4r|*4r|*4r|*4r|*4r|}
% ...
\end{tabular}
\caption{A very wide table}
\label{tab:wide_table}
\end{table}
\vspace*{\fill}
\end{landscape}
\end{document}
在这种情况下,诀窍在于\vspace*{\fill}
,正如在另一个线程中提出的那样:在页面上垂直居中文本。