文档中有两个 \maketitle:\thanks 存在问题

文档中有两个 \maketitle:\thanks 存在问题

我需要在一个文档中有两个 \maketitles。标题包几乎完美地处理了这个问题。问题是我在 \title 和 \author 中使用了 \thanks 命令,然后在第二个 \maketitle 中,\thanks 命令的文本重复了两次。有人知道如何去掉第二次出现的 \thanks 命令文本吗?谢谢,Eilon

\documentclass[12pt]{article}
\usepackage{titling}
\begin{document}

\begin{titlepage}
\title{First title\thanks{I thank my kids.}}
\author{Author1\thanks{Affiliation of author1. } and Author2\thanks{Affiliation of author2.}}
\maketitle
\end{titlepage}

\begin{titlepage}
\title{Second title}
\maketitle
\end{titlepage}
\end{document}

答案1

LaTeX 会用\thanks宏来收集所有由命令添加的脚注\@thanks;在排版第二个标题之前必须将其清空。为了避免第二个标题页重置页码计数器,我们使用包xpatch并修改titlepage环境;不过,这是一种 hack。或者,您可以使用手动设置页码\setcounter{page}{... desired page number ...}

\documentclass[12pt]{article}
\usepackage{titling}
\usepackage{xpatch}
\makeatletter
\newenvironment{mytitlepage}%
  {\begin{titlepage}\def\@thanks{}}%
  {\end{titlepage}}
\xpatchcmd\titlepage{\setcounter{page}\@ne}{}{}{}
\xpatchcmd\endtitlepage{\setcounter{page}\@ne}{}{}{}
\makeatother
\begin{document}

\begin{mytitlepage}
\title{First title\thanks{I thank my kids.}}
\author{Author1\thanks{Affiliation of author1.}
    and Author2\thanks{Affiliation of author2.}}
\maketitle
\end{mytitlepage}

\begin{mytitlepage}
\title{Second title}
\maketitle
\end{mytitlepage}
\end{document}

相关内容