我想用 LaTeX 制作一个非常宽的表格,当它到达页面的右端时会自动中断。由于我不太擅长描述这个问题,我画了一个草图:
它看起来是否完全一样(例如虚线)并不重要。重要的是它会自动断开。你有什么想法吗?我不想旋转桌子,因为它会占用太多空间。
答案1
这是一个开始...我只是连接了一堆单列tabular*
块。
已编辑,为 OP 提供更类似于的附加输入格式tabular
。
\documentclass{article}
\usepackage{listofitems}
\newcommand\mycell[2]{%
\begin{tabular*}{35pt}{c}$#1$\\\hline $#2$\end{tabular*}\allowbreak\ignorespaces}
\newcommand\mysep{%
\begin{tabular*}{0pt}{|c}\strut\\\hline\strut\end{tabular*}\allowbreak\ignorespaces}
\newcommand\Startthistable[2]{%
\par\noindent\leftskip35pt\leavevmode\llap{\mycell{#1}{#2}}\mysep}
\newcommand\Endthistable{\par\leftskip0pt\ignorespaces}
\newcommand\Setthistable[1]{%
\setsepchar{\\/&}%
\readlist*\mytabledata{#1}%
\foreachitem\x\in\mytabledata[1]{%
\mycell{\x}{\mytabledata[2,\xcnt]}%
}%
}
\begin{document}
\Startthistable{x}{f(x)}
\Setthistable{
1& 2& 3& 4& 5& 6& 7& 8& 9&10&11&12&13&14&15&16&17&18&19&20&21&22&23\\
1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1& 1
}
\Endthistable
\noindent or else one can do it the original way
\Startthistable{x}{f(x)}
\mycell{1}{1}
\mycell{2}{1}
\mycell{3}{1}
\mycell{4}{1}
\mycell{5}{1}
\mycell{6}{1}
\mycell{7}{1}
\mycell{8}{1}
\mycell{9}{1}
\mycell{10}{1}
\mycell{11}{1}
\mycell{12}{1}
\mycell{13}{1}
\mycell{14}{1}
\mycell{15}{1}
\mycell{16}{1}
\mycell{17}{1}
\mycell{18}{1}
\mycell{19}{1}
\mycell{20}{1}
\mycell{21}{1}
\mycell{22}{1}
\mycell{23}{1}
\Endthistable
\end{document}