优点:
当我使用纯 TeX,然后运行dvips
以获取 Postscript 输出时,我会在左侧的缩略图页面中看到前言的负页码(evince
和gv
(幽灵视图)),接着在前言之后看到从 1 开始的正页码,尽管前言okular
显示从 1 开始的正页面,忽略前言的负页码。
缺点:
当我使用 将 Postscript 文件转换为 PDF 时ps2pdf
,我的所有四个 PDF 查看器都显示从 1 开始的第一个物理页面的页面,而不是使用负数页码作为前言。然后继续编号,PDF 缩略图中的页码和每页上的打印页码之间存在恒定的偏移量。
我希望 PostScript 到 PDF 的转换能够生成一个 PDF 文件,该文件显示前言的 22 页中的第 -1 到第 -22 页,然后前言之后的第一页显示第 1 页。换句话说,缩略图应该显示打印在每页上的页码。
ps2pdf
我查看了和的参数dvips
,但看起来没有什么效果。我听说 LaTeX 用户确实得到了正确的结果,但我使用的是纯 TeX。
PS. 这是一个演示该问题的示例文件。
% test1.tex 2015-8-4 Alan U. Kennington.
% Demo of using \pageno to set negative page numbers, like normal plain TeX.
% Compile with tex, dvips and ps2pdf.
\pageno-1
Page minus 1.
\vfill\eject
Page minus 2.
\vfill\eject
\pageno1
Page plus 1.
\vfill\eject
Page plus 2.
\bye
PDF 查看器将第 i 页和第 ii 页显示为 1 和 2。然后它们将第 1 页和第 2 页显示为 3 和 4。我非常希望它们将第 i 页和第 ii 页显示为 -1 和 -2。然后它们应该将第 1 页和第 2 页显示为 1 和 2。
答案1
答案就在这里:普通的 xetex 页面标签。
下面是纯 TeX 中的一个最简示例。
(如果忽略鱼的话,它就是最简示例。)
\pageno-1
Page minus 1.
\vfill\eject
Page minus 2.
\vfill\eject
\special{pdf: docview << /PageLabels << /Nums[0 <</S /r>> 2 <</S /D>>] >> >> }
\special{pdf: docinfo << /Author (Fred Fish) /Title (Fried Fish) >> }
\pageno1
Page plus 1.
\vfill\eject
Page plus 2.
\bye
如果使用 和 进行编译tex
,则在 、和PDF 查看器中,dvipdfm
生成的 PDF 文件会显示前两页的页码“i”和“ii”,第 3 页和第 4 页的页码“1”和“2” ,但我的副本只显示第 1 至第 4 页。evince
acroread
gv
okular
无论如何,这表明所需的参数正在从纯 TeX 进入 PDF 文件。绝对dvips
不接受这些\special
命令。
非常感谢 Heiko Oberdiek 于 2012-09-26 发布答案。
并发布关键链接:
http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/pdf/pdfs/PDF32000_2008.pdf。
附言。2015-8-5。
Heiko Oberdiek 在 2013-8-13 的回答很全面也很详细,比我的好多了:怎样才能在 Acrobat Reader 中显示逻辑页码?那里展示了如何使用
dvips
原始 postscript\special
而不是dvipdfm
PDF \special
。我已经验证了原始 postscript 方法对于带有 和 的纯 TeX 来说,效果与宣传的dvips
一样ps2pdf
。