【问题标题】:Duplex Postscript - Force new page双面后记 - 强制新页面
【发布时间】:2010-11-14 05:51:20
【问题描述】:

有没有一种简单的方法可以在不插入空白页的情况下将 postscript 页面强制到新的物理页面上?

例如假设我有一个包含 10 个附言页的 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 语法对应于“强制到首页”。

【问题讨论】:

    标签: postscript duplex


    【解决方案1】:

    尝试关闭双面打印并立即重新打开,否则会插入空白页。

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

    setpagedevice 隐式调用 erasepageinitgraphics(所以在相关的 showpage 之后使用它),但是 PostScript 语言参考手册说:

    在设备激活时,双面设备总是在一张新的介质上打印第一页;停用时,如果仅在一面打印,它会自动传送最后一张介质。

    所以,如果这可行,它应该保存showpage,但仍能正确弹出页面。

    【讨论】:

      【解决方案2】:

      这可能有点牵强,但您可以更改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 在他的回答中所显示的那样。

      【讨论】:

        猜你喜欢
        • 2015-10-19
        • 2012-03-02
        • 2021-10-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-18
        • 1970-01-01
        相关资源
        最近更新 更多