双面打印后的Postscript - 强制新页面

6
有没有一种简单的方法可以强制将一个PostScript页面放置在新的物理页面上,而不插入空白页面?
例如,假设我有一个包含10个PostScript页面的PS文档,需要打印到不同的文档束中:
1- 物理页面1正面
2- 物理页面1背面
3- 物理页面2
4- 物理页面3正面
5- 物理页面3背面
6- 物理页面4正面
7- 物理页面5
8- 物理页面6正面
9- 物理页面7正面
10- 物理页面7背面
我可以将整个文件设置为双面打印,并在第3、6、7和8页后插入虚拟页面,但我想避免这样做,因为我们的打印机按印数计费,而不是按物理页面计费。
我希望有一个简单的PS语法对应于“强制前往首页”。
2个回答

5

尝试关闭双面打印,然后立即重新开启,在您需要插入空白页的地方。

<< /Duplex false >> setpagedevice
<< /Duplex true >> setpagedevice

setpagedevice 隐式调用 erasepageinitgraphics(因此请在相关的 showpage 之后使用它),但是 PostScript 语言参考手册中指出:

在设备激活时,双面打印设备总是在新媒介上打印第一页;在停用时,如果仅打印了单面,则自动提供最后一张媒介纸。

因此,如果这样做有效,则应该节省一个 showpage,但仍然可以正确弹出页面。


0

这可能有些牵强,但你可以改变showpage的行为,然后编写任何你想要的程序。

% before the first -showpage-

/pageCount 0 def

% redefinition of 'showpage'
/showpage 
{
    showpage
    /pageCount pageCount 1 add def

    % add page checking here, and whatever logic you want
    % just call another showpage to create an empty one
}
bind def 
% 'bind' keeps old showpage unaltered, avoiding recursion

这是一种选择,当禁用双面打印不可能时,正如dreamlax在他的答案中所示。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接