2

I'm using figcaps to move the figures at the end of the document and to generate a list of figures. The figcaps package displays the figure captions two times: once in the figure list and once below each figure. Is there a way to display the captions in the list only?

Here is the code I'm using in the preamble:

\usepackage[blank]{figcaps}
\printfigures

\makeatletter
\patchcmd{\@figurepage}{\vspace{20pt}}{\clearpage}{}{}
\makeatother
\makeatletter
\patchcmd{\@tablepage}{\bigskip}{\clearpage}{}{}
\makeatother
3
  • Welcome to TeX.SX! Please help us to help you and add a minimal working example (MWE) that illustrates your problem. It will be much easier for us to reproduce your situation and find out what the issue is when we see compilable code, starting with \documentclass{...} and ending with \end{document}.
    – egreg
    Feb 2 '15 at 11:46
  • Do you want to suppress the entire caption, i.e., including the "Figure <n>:" and "Table <m>:" parts?
    – Mico
    Feb 2 '15 at 11:59
  • No, I need to leave "Figure<n>" part.
    – AndreaM
    Feb 2 '15 at 12:02
1

Tables and figures are treated differently by figcaps, because the list of captions is displayed separately only for figures.

Just add another patch to those you're already adding.

\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}

This will kill the figure captions when the .lof file is read back in for printing the figures.

If you want to only kill the caption text, keeping “Figure n”, then you can do

\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}

enter image description here

Of course, knowledge of the class and package you're using is important, as the patches will not succeed if, for example, you load the caption package or a class different from article.

3
  • It removes the caption. However the also removes the figure number ("Figure <n>"). Is there a way to remove caption only?
    – AndreaM
    Feb 2 '15 at 12:12
  • @AndreaM I added a way, but without a minimal example in the question, it's guessing.
    – egreg
    Feb 2 '15 at 12:32
  • You're right, sorry. I'm using the svjour3 class for springer journal. I'm trying to set up a minimal example that I'll post online as soon as possible.
    – AndreaM
    Feb 2 '15 at 13:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.