答案1
您没有指定文档类别,这是此处信息的重要组成部分。作为一般做法,您需要提供一个完整的最小示例来显示问题。在您的例子中,您可以通过使用以下文档来获得非常高的表号
...
\appendix
\chapter{An appendix}
\setcounter{table}{100}
\begin{table}
\caption{A caption}
No need to put an actual table here
\end{table}
我假设你正在使用report
或基于它的东西¹,在这种情况下,问题在于默认情况下,目录中的数字为表格编号保留了 2.3em 的空间,这对于大多数文档来说都没问题。然而,你正在编写一个例外的文档,其中一章中有超过 99 个表格。
您需要向私有 LaTeX 命令添加补丁来\l@table
修复此问题。默认情况下,它将执行:
\@dottedtocline{1}{1.5em}{2.3em}
1 是层次结构的深度(0=章节,1=节/表格/图形,2=小节等),1.5em 是缩进,2.3em 是保留给数字的空间宽度。
我们可以通过以下方式修改定义:
\makeatletter
\RenewDocumentCommand{\l@figure}{} % ❶
{\@dottedtocline{1}{1.5em}{2.8em}}
\makeatother
如果你还在使用旧版本的 LaTeX(2020 年 10 月之前),请将标有 ❶ 的行替换为
\renewcommand*{\l@figure}
- 我的建议可能并不适用于所有文档类别,或者如果您(或您的文档类别)正在使用某些特殊包来格式化目录。
答案2
使用该tocloft
包及其\cfttabnumwidth
宏来设置表格标题数字的空间。
\documentclass{report} % or whatever class you are using
\usepackage{tocloft}
\setlength{\cfttabnumwidth}{3in} % an enormous space for table caption numbers
% the rest of your preamble
\begin{document}
\listoftables
% the rest of your document
阅读手册以了解更多信息。