对于我的论文,每个图都必须出现在其第一次引用的页面之后的单独页面上。我发现唯一能始终如一地做到这一点的方法是执行以下所有操作:
- 将每个图形包裹在
\afterpage{...\clearpage}
- 使用
\usepackage{flafter}
- 在第一个引用之后立即定义浮动,即使它是在段落的中间。
但\afterpage{}
在段落内使用会给我在出现的文本中留出额外的空间。我希望了解如何避免这种额外的空间或如何更好地实现我的浮动放置需求。
梅威瑟:
\documentclass{article}
\usepackage{afterpage}
\begin{document}
There is a normal amount of space after this sentence.
After this sentence is an afterpage placing ``test'' on the next page.
\afterpage{test}
Why is there extra space before this sentence?
\end{document}
答案1
小心不要过度使用afterpage
(注意其文档中的警告)。在这里我认为你根本不需要它,只需使用[p]
浮动,这样它们就会出现在浮动页面上而不会与文本混合,并且安排即使是小浮动也会尽早在其自己的页面上运出,而不是被阻止收集更多以填充更多页面。
在下面的第一段中,我显示了双倍空间实际上与 afterpage 无关,您得到的结果与{}
相反的情况相同,环境figure
被明确编码为可用于段落中间,并注意调整空白,因此如果您在它之前或之后留出空间,则只会添加一个空格。
\documentclass{article}
% 1 float per page, even if small
\makeatletter
\renewcommand\floatpagefraction{0}
\setlength\@fpsep{\textheight}
\makeatother
\showoutput
\begin{document}
There is a normal amount of space after this sentence.
After this sentence is an afterpage placing ``test'' on the next page.
See 0.
{}
Why is there extra space before this sentence?
There is a normal amount of space after this sentence.
After this sentence is an afterpage placing ``test'' on the next page.
See \ref{zzz}.
\begin{figure}[p]
\centering
\fbox{FFFFF}
\caption{a figure}
\label{zzz}
\end{figure}
Why is there extra space before this sentence?
There is a normal amount of space after this sentence.
After this sentence is an afterpage placing ``test'' on the next page.
See \ref{zzz2}.
\begin{figure}[p]
\centering
\fbox{GGGG}\\
\fbox{GGGG}
\caption{a notherfigure}
\label{zzz2}
\end{figure}
Why is there extra space before this sentence?
\end{document}
答案2
page.
单词 和之间有两个空格Why
。第一个空格来自第 5 行的末尾,第二个空格来自第 6 行的末尾。如果只想要一个空格,可以这样做:
page.\afterpage{...} Why
或者
page. \afterpage{...}Why
或者
page.%
\aftepage{...}
Why
或者
page.
\afterpage{...}%
Why
或者
page.
\afterpage{...}Why
ETC。