目录标题已删除

目录标题已删除

我想更改报告中的段落样式,以便没有缩进。我在序言中使用了:

\usepackage[parfill]{parskip}

虽然这解决了缩进问题,但似乎又产生了一个新问题。我使用以下方法添加了目录和图表列表:

\tableofcontents
\listoffigures

以前它们看起来还不错,但在我添加parskip包之后,我的目录页的标题已被删除。事实上,它们现在以正常的 12 pt 字体出现在目录页下方。有人对我如何更改段落样式但保留目录页中的标题有什么建议吗?这是我的项目要点:

\documentclass[a4paper,12pt, reqno]{amsart}

\usepackage{tikz}        % only needed if you include TpX drawings
\usepackage{graphicx} % only needed if you include graphics files other than TpX
\usepackage{hyperref} % produces nice hyperlinks in your document
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{verbatim}
\usepackage{color}
\usepackage{lscape}
\usepackage[parfill]{parskip}


\theoremstyle{definition}
\newtheorem{example}{Example}[section]
\numberwithin{figure}{section}
\numberwithin{equation}{section}

\begin{document}

\begin{titlepage}
...
\end{titlepage}

\tableofcontents
\listoffigures

\section{}
...
\appendix
...
\begin{thebibliography}

希望有些帮助。

编辑仅附上一张截图,说明一下区别。这是没有parskip

在此处输入图片描述

这是糟糕的版本parskip

在此处输入图片描述

Contents人们看到和标签的格式和位置List of figures都被破坏了。

答案1

parskip重新定义了 ,\@starttoc以便不对目录和类似列表应用非零 parskip。但是,它执行的重新定义与\@starttoc中的定义不兼容。按如下方式amsart加载包:parskip

\usepackage{etoolbox}
\makeatletter
\let\ams@starttoc\@starttoc
\makeatother
\usepackage[parfill]{parskip}
\makeatletter
\let\@starttoc\ams@starttoc
\patchcmd{\@starttoc}{\makeatletter}{\makeatletter\parskip\z@}{}{}
\makeatother

这将按预期修补amsart版本\@starttoc。您仍会收到有关已更改的警告\@starttoc。接受它。

个人想法。我不会parskip在任何超过两页的文档中使用。当然也不会在使用 AMS 样式的文档中使用。

相关内容