Tex怎么设置每一页的加载项

2019-10-17 21:39发布

就像fancyhdr一样,怎么设置Tex在每一页自动加载一个命令或内容。更深入一下,就是想知道页眉页脚等的底层实现。比如,设置在每一页开头都加入‘123’这三个数字。

就像fancyhdr一样,怎么设置Tex在每一页自动加载一个命令或内容。更深入一下,就是想知道页眉页脚等的底层实现。比如,设置在每一页开头都加入‘123’这三个数字。
3条回答
论坛 github.com/C
2019-10-17 22:13
1. 页眉页脚没什么实现机制,就是用盒子(hbox,vbox)摆放到指定位置。具体实现在 `texdoc source2e`, sec. 65.1,涉及摆放和输出页眉页脚的代码在 602 行开始。 2. 在每一页都加入特定内容,有几种做法。 1. 第一种,放在页眉页脚里。如果需要让内容的位置超出页眉页脚范围,可以用盒子手动调整到绝对位置,也可以用 tikz nodes 摆放到相对位置(一个例子见[这则知乎回答](https://www.zhihu.com/question/303812076/answer/551320176)的后半段) 2. 第二种是在一页内容已经生成后,去 patch 那个即将输出的一页。有宏包 `atbegshi`(更现代)、`everyshi`(更早期)、`eso-pic`(侧重插图)。这里有个变量,即插入的内容是在页面既有内容的底层还是上层,这在遇到内容重叠覆盖时需要理清楚。 注意,以上两种方式生成的内容,都和版心里既有的内容无法建立联系。假设有需求,希望每页第一行的内容是一段长度随机的文本,当页的正常内容紧跟在随机文本之后插入。那么这种需求,以上两种方式都无法实现。

一周热门 更多>