长桌内调节箱

长桌内调节箱

以下longtable(或longtabu)太宽。我虽然很天真,但还是把表格放入了adjustbox,但它无法编译。

\documentclass{article}
\usepackage{longtable}
\usepackage{tabu}
\usepackage{graphicx}
\usepackage{adjustbox}
\usepackage{showframe}

\begin{document}

\begin{adjustbox}{max width=\textwidth}
\begin{longtable}{*{6}{c}}
    &
    Homer J. Simpson &
    Marge Simpson &
    Bart Simpson &
    Lisa Simpson &
    Maggie Simpson 
\\
\hline
\endhead
    Age &
    38 &
    34 &
    10 &
    8  &
    1
\\
\end{longtable}
\end{adjustbox}
\end{document}

是否可以自动调整表格宽度\textwidth

更新:

longtable如果我将 替换为tabular并删除 ,则可以获得预期结果\endhead。但我需要一个可以跨页面拆分的表格。并且我不希望在单元格内换行 - 我想缩放整个表格的宽度。

答案1

在此处输入图片描述

在此处输入图片描述

\documentclass{article}
\usepackage{ltablex,array}
\usepackage[textheight=1in]{geometry}
\usepackage{showframe}
\begin{document}

\newcolumntype{L}{>{\raggedright\arraybackslash}X}
\begin{tabularx}{\textwidth}{*{6}{L}}
    & Homer J. Simpson & Marge Simpson & Bart Simpson & Lisa Simpson & Maggie Simpson \\
\hline \endhead
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
\end{tabularx}
\end{document}

您需要两个功能:1) 表格应为\textwidth,2) 表格应跨页,那么您需要同时使用tabularxlongtable。解决方案是使用ltablex包,它提供了tabularx在页面边界处分页的功能,就像longtable一样。我定义了newcolumntype左对齐{L},但如果您愿意,可以忽略它。另外,我设置了一个非常短的页面高度,仅供参考。在您的文档中,您不需要这样做。

如果表格仍然太宽,您可以设置\small字体大小或缩小列间距(例如\setlength{\tabcolsep}{4pt})。关于这一点,网站上也有太多问题。

更新

\documentclass{article}
\usepackage{ltablex,array}
\usepackage{showframe}
\begin{document}
\footnotesize
\setlength{\tabcolsep}{3pt}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\begin{tabularx}{\textwidth}{C*{5}{c}}
    & Homer J. Simpson & Marge Simpson & Bart Simpson & Lisa Simpson & Maggie Simpson \\
\hline \endhead
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
    Age &   38 &   34 &   10 &   8  &   1 \\
\end{tabularx}
\end{document}

在此处输入图片描述

相关内容