我使用以下代码创建了一个长表,该长表有五列,可延伸至整个页面宽度。我喜欢这个表的一切,除了全部列被填充以使表格与页面一样宽。相反,我希望前四列以这种方式扩展,但我希望第五列(标题为 D 的列)“根据内容调整大小”。也就是说,我希望它的宽度刚好适合其值。
\documentclass[table]{article}
\usepackage{fancyhdr}
\usepackage[left=0.50in,top=2.0in,right=0.50in,bottom=1.0in]{geometry}
\setlength\parindent{0pt}
\usepackage{longtable}
\usepackage{pdflscape}
\begin{document}
\setlength\LTleft{0pt}
\setlength\LTright{0pt}
\begin{longtable}{l @{\extracolsep{\fill}} | r|r|r|r}
\multicolumn{5}{r}{\bfseries {\Large{My Table}}} \\
& {\bfseries A}
& {\bfseries B}
& {\bfseries C}
& {\bfseries D}
\\
\endfirsthead
\multicolumn{5}{r}{\bfseries {\Large{My Table (continued)}}} \\
% name
& {\bfseries A}
& {\bfseries B}
& {\bfseries C}
& {\bfseries D}
\\
\hline
\endhead
\hline
\hspace{4mm}\ Row 1 \hspace{2mm}
& 1,200
& 800
& 2,000
& 1
\\
\hspace{4mm}\ Row 2 \hspace{2mm}
& 1,201
& 801
& 2,001
& 123
\\
\end{longtable}
\end{document}
目前的情况:
我对其外观的粗略估计是:
有没有办法做到这一点?
答案1
像这样:
\documentclass{article}
%\usepackage{fancyhdr}
\usepackage[hmargin=0.50in,top=2.0in,bottom=1.0in]{geometry}
\setlength\parindent{0pt}
\usepackage{array, longtable}
%\usepackage{pdflscape}
\begin{document}
%\setlength\LTleft{0pt}
%\setlength\LTright{0pt}
\begin{longtable}{@{\qquad}l| *{3}{>{\raggedleft}p{0.25\linewidth}|} r}
\multicolumn{5}{r}{\bfseries {\Large{My Table}}} \\
& {\bfseries A}
& {\bfseries B}
& {\bfseries C}
& {\bfseries D}
\\
\endfirsthead
\multicolumn{5}{r}{\bfseries {\Large{My Table (continued)}}} \\
% name
& {\bfseries A}
& {\bfseries B}
& {\bfseries C}
& {\bfseries D}
\\
\hline
\endhead
\hline
Row 1 & 1,200
& 800
& 2,000
& 1
\\
Row 2 & 1,201
& 801
& 2,001
& 123
\\
\end{longtable}
\end{document}