如何创建具有目录等属性的表格?

如何创建具有目录等属性的表格?

有没有简单的方法来创建像表格一样的目录?

详细地说,我想要与目录相同的布局,相同的宽度,特别是用点填充白色空间,但以表格作为内容。

到目前为止,我尝试采用常规表格并调整对齐方式和列宽,但无法用虚线填充空白。

答案1

\documentclass{article}
\usepackage{tabularx}

\makeatletter
\newcommand*{\tocdotfill}{%
  \leaders\hbox{%
    $\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$%
  }\hfill\kern\z@
}
\makeatother

\begin{document}
\noindent
\begin{tabularx}{\linewidth}{lXr}
A & Hello world \dotfill & 1\\
B & Foobar \tocdotfill & 2\\
\end{tabularx}
\end{document}

结果

重要的问题是,通过 删除了表格单元格末尾的跳过规范\unskip。已在末尾\dotfill添加了以防止这种情况发生。\kern\z@

\tocdotfill使用与 相同的代码\dottedtocline,用于目录中。还\kern\z@附加了 以防止“取消跳过”。其他内容(例如\null,空\hbox)也可用于此目的。

答案2

虚线由 构成\dotfill。使用 tabularx 的表格可以是:

\documentclass{article}
\usepackage{tabularx}
\begin{document}
\begin{tabularx}{\textwidth}{ccX@{}l}
    test1 & test & test \dotfill & [A] \\
    test2 & test & test \dotfill & [V] \\
\end{tabularx}
\end{document}

要改变点的间距,您可以重新定义命令(参见:如何更改 \dotfill 中的点间距?

相关内容