我正在向期刊提交一篇文章,要求如下:
图例应作为文本文档的一部分一个接一个地列出,与图形文件分开。
目前,我的图片标题的格式为
\caption[short caption]{full caption}
我只希望full caption
出现。
我可以将完整的图例插入到图表列表中,并将其从图表本身中排除吗?
(编辑:不改变表格标题的行为?)
答案1
这似乎就是你所追求的……
使用caption
包裹您可以通过删除标签分隔符来修改标题。此外,我已经重新定义,\caption
因此您只需指定一个(强制)参数。(编辑:将重新定义移至 之后\begin{document}
)oldcaption
给出了 的默认行为caption
。
\documentclass{article}
\usepackage{caption}% http://ctan.org/pkg/caption
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage[demo]{graphicx}% http://ctan.org/pkg/graphicx
\usepackage{letltxmacro}% http://ctan.org/pkg/letltxmacro
\DeclareCaptionTextFormat{none}{} \captionsetup[figure]{labelsep=none,textformat=none}
\begin{document}
\tableofcontents
\listoffigures
\section{First section}
\lipsum[1]
\begin{figure}[ht]
\centering \includegraphics{image1}
\caption[Unused first legend]{This is a first legend}
\end{figure}
\lipsum[2]
\begin{table}[ht]
\caption[a, b, and c]{The first $3$ letters of the alphabet}
\centering
\begin{tabular}{lll}
\hline
a & b & c \\
\hline
\end{tabular}
\end{table}
\lipsum[1]
\begin{figure}[ht]
\centering \includegraphics{image2}
\caption[Unused second legend]{This is a second legend}
\end{figure}
\lipsum[3]
\end{document}
lipsum
提供填充文本,同时demo
提供选项graphicx
仅适用于此 MWE 示例,因为它不包含图像。标题仅排版为Figure <num>
,而实际图形标题包含在“图形列表”中。
答案2
在下面的解决方案中,标题列表打印在文档末尾。它的优点是,只需注释掉添加的代码即可打印文档的正常版本。最终列表中只会打印“长标题”,而正常列表中将打印短标题。
\documentclass[a4paper]{article}
\usepackage{lipsum}
\makeatletter
\usepackage{shorttoc,letltxmacro,etoolbox}
\LetLtxMacro{\ORIcaption}{\caption}
\renewcommand{\caption}{\@dblarg{\x@caption}}
\def\x@caption[#1]#2{\ORIcaption[\shortcaption{#1}\longcaption{#2}]{#2}}
\DeclareRobustCommand{\shortcaption}{}
\DeclareRobustCommand{\longcaption}{}
\let\ORIlistoffigures\listoffigures
\renewcommand{\listoffigures}{%
\begingroup
\def\shortcaption##1{##1} \def\longcaption##1{}
\anothertableofcontents[lof]{\jobname}{\listfigurename}{1}
\endgroup}
\newcommand{\listofcaptions}{\newpage
\pagestyle{empty}
\begingroup
\def\shortcaption##1{} \def\longcaption##1{##1}%
\def\listfigurename{Captions to figures}%
\def\l@figure##1##2{\@dottedtocline{1}{1.5em}{2.3em}{##1}{}}%
\patchcmd{\@dottedtocline}{\hbox{.}}{}{}{}%
\listoffigures
\endgroup}
\AtEndDocument{\listofcaptions}
\makeatother
\begin{document}
\listoffigures
\lipsum[1]
\begin{figure}
X
\caption{This has only a long caption}
\end{figure}
\begin{figure}
Y
\caption[This short one]{This has also a short caption}
\end{figure}
\end{document}