有没有办法将所有图表和表格标题放在 PDF 末尾而不显示图表和表格?以下命令将所有图表及其标题放在末尾,但我想阻止显示图表。
\usepackage[figuresonly,nolists,nomarkers]{endfloat}
此外,是否可以列出所有标题而不\newpage
在它们之间发出?
答案1
这里有许多事情要做。\AtBeginDelayedFloats
您可以调整一些处理。这包括:
\renewcommand{\includegraphics}[2][]{}
这将删除该命令的功能
\includegraphics
。\renewcommand{\resizebox}[3]{}
这将删除该命令的功能
\resizebox
(如果您使用它来调整表格或图像的大小)。\RenewEnviron{tabular}[2][]{}
这会破坏
tabular
环境及其内容。
此外,您还必须增加计数器totalnumber
(或许还有topnumber
和bottomnumber
)以允许页面上有更多的浮动。
\documentclass{article}
\usepackage{graphicx,lipsum,environ}
\usepackage[nolists,nomarkers]{endfloat}
\AtBeginDelayedFloats{%
\renewcommand{\includegraphics}[2][]{}% Remove \includegraphics functionality
\renewcommand{\resizebox}[3]{}% Remove \resizebox functionality
\RenewEnviron{tabular}[2][]{}% Gobble tabular environment
}
\setcounter{totalnumber}{10}% Allow up to 10 floats per page
\renewcommand{\efloatseparator}{\mbox{}}% From the documentation
\begin{document}
\section{First section}
\lipsum[1-10]
\begin{figure}[ht]
\centering
\includegraphics[width=100pt]{example-image}
\caption{A figure}
\end{figure}
\lipsum[11-20]
\begin{table}[ht]
\centering
\begin{tabular}{ *{4}{c} }
A & B & C & D \\ 1 & 2 & 3 & 4
\end{tabular}
\caption{A table}
\end{table}
\section{Second section}
\lipsum[1-10]
\begin{figure}[ht]
\centering
\includegraphics[width=100pt]{example-image}
\caption{A figure}
\end{figure}
\lipsum[11-20]
\begin{table}[ht]
\centering
\begin{tabular}{ *{4}{c} }
A & B & C & D \\ 1 & 2 & 3 & 4
\end{tabular}
\caption{A table}
\end{table}
\section{Third section}
\lipsum[1-10]
\begin{figure}[ht]
\centering
\includegraphics[width=100pt]{example-image}
\caption{A figure}
\end{figure}
\lipsum[11-20]
\begin{table}[ht]
\centering
\begin{tabular}{ *{4}{c} }
A & B & C & D \\ 1 & 2 & 3 & 4
\end{tabular}
\caption{A table}
\end{table}
\section{Last section}
\lipsum[1-10]
\begin{figure}[ht]
\centering
\includegraphics[width=100pt]{example-image}
\caption{A figure}
\end{figure}
\lipsum[11-20]
\begin{table}[ht]
\centering
\begin{tabular}{ *{4}{c} }
A & B & C & D \\ 1 & 2 & 3 & 4
\end{tabular}
\caption{A table}
\end{table}
\end{document}
答案2
好的,所以我有一个明显的想法来实现我想要的部分。我只需要注释掉包含图片的命令(废话!)。例如:
\begin{figure}[ht]
\centering
%\resizebox{17cm}{!}{\includegraphics[scale=1]{myfigure.png}}
\caption{Caption for my figure.}
\label{fig:myfigure}
\end{figure}
这会“隐藏”PDF末尾的图形并仅显示标题。显然,防止每页显示一个标题的命令如下:
\renewcommand{\efloatseparator}{\mbox{}}
但是,由于某些未知的原因,我在一页上显示了三个标题,而在另一页上显示了两个标题(!),如下所示。
我不知道为什么会发生这种情况。这看起来很奇怪。如果我无法解决这个问题,我只会选择每页显示一个标题。
编辑
如下所示,可以使用以下命令来“修复”此问题:
\setcounter{totalnumber}{10}