2016-01-27 121 views
1

我有一個HP Deskjet 5150 PCL兼容打印機,我需要打印PostScript文件。如果我用gv查看文件,它的利潤率很好。當我嘗試打印時:Ghostscript和頁邊距

gs -dSAFER -dNOPAUSE -dBATCH -q -sDEVICE=hpdjportable -sOutputFile=/dev/usb/lp0 file.ps
左邊距右移約6毫米。因此,頁面最右邊的6毫米被裁剪掉。我知道這個缺陷幾乎不明顯,但我不喜歡它。印刷品不是公平的。

任何幫助,非常感謝。

回答

3

聽起來像您的打印機有一個硬件裕量,一個區域,它根本無法打印,通常是由於紙張處理硬件。

這可能意味着紙張的可打印區域小於介質的大小,因此如果您嘗試將邊緣打印到邊緣,那麼位會「脫落」。屏幕顯示明顯不會遇到這個問題....

通常PostScript使用的打印機將使用包含可打印區域的PPD,或者它們將稍微重新調整輸入以適應輸入。

現在,我懷疑從Ghostscript的PCL輸出只不過是一個用足夠的PCL打包的位圖來打印它,這意味着它假定它可以打印到邊緣。因此,您的解決方案將稍微重新調整輸出,並可能在媒體上稍稍移動它。

您可以使用任意多個不同的命令行選項來選擇不同的介質尺寸,如DEVICEWIDTHPOINTSDEVICEHEIGHTPOINTS-g你還需要選擇-dFIXEDMEDIA(這樣的PostScript不能改變介質尺寸)和-dFitPage,使GS將縮放內容以適應新的尺寸。最後,你需要寫一個小的PostScript走動一點輸出:

-c "<</PageOffset [-18 0]>> setpagedevice" -f 

你應該把那個作爲最後的選擇,只需輸入文件名之前。你幾乎肯定需要插手那裏的數字,才能讓它出來。