当图形环境直接跟在\[ ... \]
环境后面时,输出中会出现不需要的空格。它显然看起来像是一个被转换为空格的 endlinechar。
\documentclass{article}
\begin{document}
\[ a = b. \]
\begin{figure}
figure
\end{figure}
Text\\
Text
\[ a = b. \]
\begin{figure}
figure
\end{figure}%
Text\\
Text
\end{document}
我知道我可以通过在图形环境中添加%
后\end{figure}
或通常添加来摆脱这个问题\ignorespaces
电子工具箱的\AfterEndEnvironment
。
我的问题是:这是一个错误还是预期行为?如果这是一个错误,我该向谁报告?
编辑:看来我的例子并不是一个真正简单的示例。事实证明,显示环境对于获取空间来说并不是必需的:
\documentclass{article}
\begin{document}
a%
\begin{figure}
\caption{A}
\end{figure}
b
and
c\\
d%
\begin{figure}
\caption{B}
\end{figure}
e
vs.
f%
\begin{figure}
\caption{C}
\end{figure}%
g
\end{document}
以防我表达得不够清楚:我对如何避免空格不感兴趣——我已经知道如何做到这一点了。不过,我承认这些信息可能对其他读者有用。
我更想知道这种行为是环境所导致的figure
还是一个错误?
答案1
在那里插入figure
环境并不是最好的主意。例如,即使你\begin{figure}[htp]
说h
可以接受选项,但图形将不是显示后立即打印。
figure
在段落中间插入的环境会取消其前面的空格,而不是忽略其后面的空格。但在这种情况下,它没有什么可取消的。
我总是把我的figure
和table
环境之间段落。
如果要显示一张表示显示公式内容的图片,最好将图形(而不是图形环境中)里面显示:可用的环境amsmath
允许多行显示。