内容居中似乎不起作用

内容居中似乎不起作用

我正在尝试创建一个相当不寻常的表格。问题看起来很简单,但尽管我尝试了一个星期,却无法解决它。

以下是代码:

\documentclass{book}
\usepackage{array}
\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}

\begin{document}
    \noindent\begin{tabular}{|*{29}{P{0.1cm}|}}
        \hline
        \Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}\\
        \hline
    \end{tabular}
\end{document} 

结果如下:

在此处输入图片描述

可以看出,字母“A”被推到了右侧。我希望它位于框(单元格)中。我很感激任何可能帮助我理解问题的想法。

进一步说明:

在此处输入图片描述

这里,代码相同,但字母大小为 \tiny,并增加了一行。为什么字母不在中间?单元格左壁和字母“A”之间的“空间”来自哪里?

答案1

您的列太窄,请改用c列。但是,您会发现表格对于边距来说太宽,即使您将边距减小\tabcolsep到 2pt(或 0pt)。

根据您的选择,您可以将页面设置为横向模式,使用pdflscape或将表格旋转 90 度。在示例 2,我已经使用\rotatebox图形包将表格设置为横向模式。您还必须减少顶部和底部边距以避免出现框满警告。我使用了几何学为了这个目的。

如果需要p列,可以使用\dimexpr或使用来计算宽度表格型。如果不需要多行单元格(即多列p),但所有单元格必须宽度相同,则可以使用大批w列并计算宽度。

示例 1 -c

在此处输入图片描述

\documentclass{book}
\usepackage{array}
%\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}
\setlength{\tabcolsep}{2pt}
\setlength{\extrarowheight}{1pt}

\begin{document}
    \noindent\begin{tabular}{|*{29}{c|}}
        \hline
        \Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}\\
        \hline
    \end{tabular}
\end{document} 

示例 2 - 旋转框和c

在此处输入图片描述

\documentclass{book}
\usepackage{array}
\usepackage[margin=2.5cm]{geometry}


\usepackage{graphicx}

%\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}
\setlength{\tabcolsep}{2pt}
\setlength{\extrarowheight}{2pt}
\renewcommand{\arraystretch}{1.2}


\begin{document}
\pagestyle{empty}
\noindent\rotatebox [origin=center]{90}{%
\begin{tabular}{|*{29}{c|}}
        \hline
        \Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}&\Huge{A}\\
        \hline
    \end{tabular}%
}
\end{document} 

相关内容