Ghostscript 和页边距
Ghostscript and page margin
我有一台 HP Deskjet 5150 PCL 兼容打印机,我需要打印一个 PostScript 文件。如果我用 gv
查看文件,它的边距很好。当我尝试打印它时:
gs -dSAFER -dNOPAUSE -dBATCH -q -sDEVICE=hpdjportable -sOutputFile=/dev/usb/lp0 file.ps
左边距向右移动了大约 6 毫米。因此,页面最右边的 6 毫米被裁掉了。我知道这个缺陷几乎不引人注意,但我不喜欢它。印刷品在其他方面非常公平。
非常感谢任何帮助。
听起来您的打印机有硬件余量,这是一个根本无法打印的区域,通常是由于纸张处理硬件。
这可能意味着纸张的可打印区域小于介质的尺寸,因此如果您尝试打印到边缘,那么位 'drop off'。屏幕显示显然不会遇到这个问题....
通常使用 PostScript 的打印机要么使用包含可打印区域的 PPD,要么稍微重新缩放输入以适合。
现在,我怀疑 Ghostscript 的 PCL 输出只不过是一个位图,包裹着刚好足以使其打印的 PCL,这意味着它 将 假设它可以打印到边缘。因此,您的解决方案是稍微重新调整输出并可能在媒体上稍微移动它。
您可以使用几个不同的命令行选项中的任何一个来 select 不同的媒体大小,例如 DEVICEWIDTHPOINTS
和 DEVICEHEIGHTPOINTS
或 -g
您还需要 select -dFIXEDMEDIA
(因此 PostScript 无法更改媒体大小)和 -dFitPage
使 GS 缩放内容以适应新大小。最后,您需要编写一些 PostScript 来稍微移动输出:
-c "<</PageOffset [-18 0]>> setpagedevice" -f
你应该把它作为最后一个选项,就在输入文件名之前。您几乎肯定需要修改其中的数字才能使其正确显示。
我有一台 HP Deskjet 5150 PCL 兼容打印机,我需要打印一个 PostScript 文件。如果我用 gv
查看文件,它的边距很好。当我尝试打印它时:
gs -dSAFER -dNOPAUSE -dBATCH -q -sDEVICE=hpdjportable -sOutputFile=/dev/usb/lp0 file.ps左边距向右移动了大约 6 毫米。因此,页面最右边的 6 毫米被裁掉了。我知道这个缺陷几乎不引人注意,但我不喜欢它。印刷品在其他方面非常公平。
非常感谢任何帮助。
听起来您的打印机有硬件余量,这是一个根本无法打印的区域,通常是由于纸张处理硬件。
这可能意味着纸张的可打印区域小于介质的尺寸,因此如果您尝试打印到边缘,那么位 'drop off'。屏幕显示显然不会遇到这个问题....
通常使用 PostScript 的打印机要么使用包含可打印区域的 PPD,要么稍微重新缩放输入以适合。
现在,我怀疑 Ghostscript 的 PCL 输出只不过是一个位图,包裹着刚好足以使其打印的 PCL,这意味着它 将 假设它可以打印到边缘。因此,您的解决方案是稍微重新调整输出并可能在媒体上稍微移动它。
您可以使用几个不同的命令行选项中的任何一个来 select 不同的媒体大小,例如 DEVICEWIDTHPOINTS
和 DEVICEHEIGHTPOINTS
或 -g
您还需要 select -dFIXEDMEDIA
(因此 PostScript 无法更改媒体大小)和 -dFitPage
使 GS 缩放内容以适应新大小。最后,您需要编写一些 PostScript 来稍微移动输出:
-c "<</PageOffset [-18 0]>> setpagedevice" -f
你应该把它作为最后一个选项,就在输入文件名之前。您几乎肯定需要修改其中的数字才能使其正确显示。