如何使用 figcaps 隐藏图形下方的标题?

如何使用 figcaps 隐藏图形下方的标题?

我正在使用 figcaps 移动文档末尾的图形并生成图形列表。figcaps 包显示图形标题两次:一次在图形列表中,一次在每个图形下方。有没有办法只在列表中显示标题?

这是我在序言中使用的代码:

\usepackage[blank]{figcaps}
\printfigures

\makeatletter
\patchcmd{\@figurepage}{\vspace{20pt}}{\clearpage}{}{}
\makeatother
\makeatletter
\patchcmd{\@tablepage}{\bigskip}{\clearpage}{}{}
\makeatother

答案1

表格和图形被区别对待figcaps,因为只有图形的标题列表才会单独显示。

只需在已添加的补丁上添加另一个补丁即可。

\documentclass{article}
\usepackage{etoolbox}
\usepackage[blank]{figcaps}
\printfigures

\makeatletter
\patchcmd{\@figurepage}{\def\label}{\renewcommand\caption[2][]{}\def\label}{}{}
\patchcmd{\@figurepage}{\vspace{20pt}}{\clearpage}{}{}
\patchcmd{\@tablepage}{\bigskip}{\clearpage}{}{}
\makeatother

\begin{document}

text

\begin{figure}
\rule{3cm}{3cm}
\caption{A square}
\end{figure}

some other text

\begin{figure}
\rule{3cm}{3cm}
\caption{Another square}
\end{figure}

text

\begin{table}
A table?
\caption{A table}
\end{table}

text

\begin{table}
A table?
\caption{Another table}
\end{table}

\end{document}

.lof当读取文件来打印图形时,这将删除图形标题。

如果你只想删除标题文字,保留“图 n”,那么你可以这样做

\documentclass{article}
\usepackage{etoolbox}
\usepackage[blank]{figcaps}
\printfigures

\makeatletter
\let\@figurepage@makecaption\@makecaption
\patchcmd{\@figurepage@makecaption}{: #2}{}{}{}
\patchcmd{\@figurepage@makecaption}{: #2}{}{}{}
\patchcmd{\@figurepage}
  {\def\label}
  {\let\@makecaption\@figurepage@makecaption\def\label}
  {}{}
\patchcmd{\@figurepage}{\vspace{20pt}}{\clearpage}{}{}
\patchcmd{\@tablepage}{\bigskip}{\clearpage}{}{}
\makeatother

\begin{document}

text

\begin{figure}
\rule{3cm}{3cm}
\caption{A square}
\end{figure}

some other text

\begin{figure}
\rule{3cm}{3cm}
\caption{Another square}
\end{figure}

text

\begin{table}
A table?
\caption{A table}
\end{table}

text

\begin{table}
A table?
\caption{Another table}
\end{table}

\end{document}

在此处输入图片描述

当然,了解您所使用的类和包非常重要,因为如果您加载caption不同于的包或类,修补程序将不会成功article

相关内容