为什么 beamer 需要多次编译才能获得正确的幻灯片编号?

为什么 beamer 需要多次编译才能获得正确的幻灯片编号?

我实际上并没有遇到什么真正的问题,但我想了解为什么 beamer 需要多次编译才能获得正确的幻灯片数量。

我正在编写演示文稿,因此我经常添加一个新框架,编写一些内容,然后编译演示文稿以查看其外观。但是每次添加新框架时,幻灯片总数都不会更新,因此最后一张幻灯片会显示一个n+1/n标签,而不是n+1/n+1我期望的那样(n之前的幻灯片数量在哪里)。

我尝试搜索一下,但没有找到任何提及此行为的内容。

这应该是正常行为吗?

编辑:我可以通过以下步骤重现此问题:

  1. 创建一个随机的投影仪演示文稿(使用显示幻灯片计数的样式,例如 AnnArbor),其中包含一个框架
  2. 编译
  3. 添加新框架
  4. 再次编译,最后一张幻灯片将显示所描述的行为。

答案1

只有在生成最后一张幻灯片时,才能知道最后一张幻灯片的编号(TeX 从头到尾读取您的输入,并在过程中创建页面)。在生成最后一页输出后(在 ),将此信息作为“整理”的一部分beamer写入文件。在下一次运行时,将读回此信息.aux\end{document}第一页生成(在\begin{document}),并且在页面创建过程中是“只读”的。当幻灯片数量发生变化时,以前的数字在排版过程中使用,因为这是读入的内容。因此,您总是需要第二次运行才能正确计算新幻灯片。(对于许多其他 LaTeX 值也是如此,例如交叉引用、最后一个,...)。

相关内容