PGF 在文档末尾添加的额外空格

PGF 在文档末尾添加的额外空格

如图所示这是我之前问题的答案“加载调整框时最后一列末尾的额外垂直空间(仅限 luatex)”,加载该包pgf会导致在文档末尾添加以下内容(在pgfutil-latex.def):

\AtBeginDocument{\AtEndDocument{\par\vfil\penalty-10000\relax\the\pgfutil@everybye}}

正如链接问题所示,这有时会导致问题。

  • 为什么要pgf这么做?
  • 如果我不知道是否pgf会在给定的文档中加载,我该如何摆脱这个空间?(无需修改文档内容)

答案1

至于为什么pgf“这样做”,这看起来像是一个错误。

为了解决垂直空间插入错误的问题,你可以在之前尝试以下代码\begin{document}

\makeatletter    
\ifdefined\pgfutil@everybye \AtEndDocument{\clearpage\the\pgfutil@everybye}\else\relax\fi
\makeatother

答案直接在填充命令中定义淡入淡出样式信息量很大,我\AtEndDocument{...}从那里借用了命令。

答案2

正如所揭示的Henri Menke 的评论,看来这个问题应该在未来的 PGF 版本中得到解决:
https://sourceforge.net/p/pgf/git/ci/fbfabbd01cecb4e8b6b1e43d1f3ad685c7e60778/

我还在 PGF/TikZ 跟踪器上打开了一个错误报告:#502 PGF 可能导致文档末尾出现多余的空格 (\pgfutil@everybye)

相关内容