如何在 Elsevier Class 中将目录显示在摘要下方的一列中,同时考虑twocolumn
和preprint
选定选项?我的最小示例如下。
\documentclass[preprint,3p,twocolumn]{elsarticle}
\usepackage{lipsum}
\makeindex
\begin{document}
\title{Article of Test}
\author{John Smith}
\ead{[email protected]}
\journal{Science Now}
\begin{frontmatter}
\begin{abstract}
\lipsum[1]
\end{abstract}
\begin{keyword}
Key\sep Key\sep Key.
\end{keyword}
\end{frontmatter}
\tableofcontents
\section{Introduction}
\lipsum[2-3]
\subsection{First subsection}
\lipsum[4-5]
\subsection{Second subsection}
\lipsum[6-7]
\section{Second section}
\lipsum[8-12]
\end{document}
答案1
您应该修补\maketitle
宏以插入\tableofcontents
到适当的位置:
\documentclass[preprint,3p,twocolumn]{elsarticle}
\usepackage{lipsum,etoolbox}
\patchcmd{\maketitle}% <cmd>
{\finalMaketitle}% <search>
{\finalMaketitle\tableofcontents\vspace{\baselineskip}}% <replace>
{}{}% <success><failure>
\begin{document}
\title{Article of Test}
\author{John Smith}
\ead{[email protected]}
\journal{Science Now}
\begin{frontmatter}
\begin{abstract}
\lipsum[1]
\end{abstract}
\begin{keyword}
Key\sep Key\sep Key.
\end{keyword}
\end{frontmatter}
\section{Introduction}
\lipsum[2-3]
\subsection{First subsection}
\lipsum[4-5]
\subsection{Second subsection}
\lipsum[6-7]
\section{Second section}
\lipsum[8-12]
\end{document}
之后插入一个小的垂直校正,\tableofcontents
以将目录与主体分开。
上面的补丁可以简化,只需使用
\let\oldfinalMaketitle\finalMaketitle% Store \finalMaketitle
\renewcommand{\finalMaketitle}{% Update \finalMaketitle to...
\oldfinalMaketitle% ...call original \finalMaketitle and...
\tableofcontents\vspace{\baselineskip}}% ...add ToC.