打印绝对页码

打印绝对页码

我正在使用pagesel包仅输出大型文档的选定部分。该文档中的页码不是绝对页码,但 pagesel(非常正确)使用绝对页码。因此,我想要做的是,在我的文档中,放置一个命令以在我的 TeX 日志中列出绝对页码。该pagesel包使用计数器ps@count来跟踪绝对页码,因此我尝试了以下两个想法,但都不起作用:

\makeatletter 
\typeout{Absolute Page \value{ps@count}} 
\makeatother

\makeatletter 
\typeout{Absolute Page \theps@count} 
\makeatother

有人可以修复其中一个吗?(我从另一个答案中看到)如何找到整数形式的绝对页码?我可以使用zref包,但是当 pagesel 已经有我想要的计数器时,这似乎需要做很多工作。)

答案1

如果你加载pagesel包裹无需指定任何选择选项(这是该包的主要目的),那么它实际上会“卸载”自身。从pagesel文档(部分1 使用,第 2 页):

根据选项的不同,该包有两种工作模式:

  1. 如果没有页面选择选项,则包将忽略其他选项并自行完成。因此包将不会抑制任何页面,并且将写入辅助文件。
  2. 至少有一个页面选择选项,则选定指定页面,其他页面将被抑制。此模式的默认设置是辅助页面不会被覆盖。(这可以通过选项更改。)

您可以pagesel使用选项作为页面范围来加载并指定应写出所有页面-。仅举一个例子:

\documentclass{article}
\usepackage[-]{pagesel}% http://ctan.org/pkg/pagesel
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\makeatletter
\EveryShipout{\typeout{Absolute page \theps@count.}}
\makeatother
\begin{document}
\lipsum[1-10]
\end{document}

.log将在你的(某处)输出:

ABD: EveryShipout initializing macros
Absolute page 1.
[1

{c:/texlive/2013/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
Absolute page 2.
[2] ) 

请注意pagesel使用everyshi确定发货时的页数。这是唯一可以使用页数计数器的可靠时间,因此您也应该这样做。

相关内容