2017-06-01 57 views
-1

我想知道如何將多個頁面的現有PDF文件打包,並且需要多次打印每個頁面。從PDF中創建附加文件並打印它

例如,我有一個3頁的PDF。我需要的輸出是111 222 333,而不只是3份(123 123 123)。

究竟是如何處理這樣的事情?我從哪說起呢?

謝謝。

+0

對於downvoter,爲什麼?你能提供原因嗎? – master2080

回答

3

你可以用多種方式做到這一點。我建議使用Ghostscript的ps2write設備,這將從PDF文件創建一個2級PostScript程序,最近的版本允許您在文檔或頁面級別注入特定的PostScript。

如果在文檔級別插入<</NumCopies 3>> setpagedevice,則符合2級的打印機應該爲每個頁面生成多個副本。

使問題更復雜是Collat​​e頁面設備參數。如果設備可以處理整理,則此參數確定是否將多個頁面副本作爲123,123,123或111,222,333遞送。

最簡單的解決方案是將其設置爲false,如果它尊重整理你會得到111,222,333。如果設備不尊重整理,那麼你仍然可以得到該訂單。

所以,用一個非常最新版本的Ghostscript的我認爲:

./gs -sDEVICE=ps2write -sOutputFile=out.ps -sPSDocOptions="<</NumCopies 3 /Collate false>> setpagedevice" <input.pdf> 

會產生的PostScript計劃,將你想要做什麼。

你也可以,例如,使用ps2write設備創建一個每頁輸出文件:

./gs -sDEVICE = ps2write -sOutputFile = OUT%d.ps

然後,您可以複製每個輸出頁面需要的次數並將它們輸入正確的順序。

+0

謝謝你的回答,你能告訴我如何使用這個命令嗎?如果我嘗試使用gswin64c運行它,它告訴我該命令的語法不正確。如果我有我需要的附加功能,該怎麼辦?我在哪裏可以找到更多? – master2080

+0

我得到了命令工作,但我得到一個空的postscript文件。可能是什麼問題? – master2080

+0

很難說,你還沒有告訴我是否有任何打印出來的東西(比如錯誤信息),你使用的是什麼版本的Ghostscript,或者給我看一個文件。 「附加功能」是什麼意思?對於Ghostscript,你可以閱讀提供的文檔,或者看看這裏:https://www.ghostscript.com/doc/9.21/Readme.htm – KenS