在乳胶中添加行号并尊重方程式

在乳胶中添加行号并尊重方程式

自动为页面添加行号通常很方便,lineno 包通常可以解决这个问题。但我遇到了两个问题

  1. 它似乎没有将行号与实际的文本行对齐——行号在行之间漂移,有时还会跳过行,从而产生此结果。

  2. 方程序列被跳过。现在我在其他 PDF 中看到这个功能可以正常工作,所以我想知道是否有我遗漏的神奇选项。

我所做的就是包含包然后打开行号。

答案1

(这是我上面发表的评论的副本。现在根据 Will Robertson 的建议给出答案。)

这部分解决了问题中描述的问题 2。我自己从未见过问题 1 发生;再说,我很少使用 lineno。

看看 ulineno.pdfhttp://www.ctan.org/tex-archive/macros/latex/contrib/lineno/(用户手册)。它解释了为什么 lineno 无法处理方程式以及包含方程式的段落,以及一些解决方法。

基本上,只有在 LaTeX 完成文本排版后才能计算行号。该包在每个段落后都会执行此操作(这与 LaTeX 的内部工作流程有关)。但是,当一个段落被方程式打断时,每个方程式环境之前的部分都会在处理方程式之前进行处理。因此,当该包尝试为其中一个段落编号行号时,它只知道段落分隔符之前未被方程式环境打断的最后一段文本。

为了解决这个问题,该包定义了一个包装器,将其放在数学环境周围,以便在进入数学环境之前刷新编号,在离开环境时对方程式进行编号,然后照常恢复。因此,手册中描述的解决方法是将方程式环境封闭在这个包装器中。

现在,为了让生活稍微简单一点,您还可以将选项传递给 lineno,以自动重新定义数学环境以包含包装器。但这可能不适用于定义自己的数学环境的文档类(例如 AMS-LaTeX 的align)。

答案2

只需在段落和公式之间添加一个空格即可。这将解决行号问题。

相关内容