代笔打印 PDF dPDFFitPage 不正确的大小


在使用

GhostScript(V9.05)打印不同大小的PDF时遇到问题。

有问题的PDF是A3横向,但是当使用以下命令行参数使用重影脚本打印时,结果以A4纵向打印并切断了一半的内容。

Commad line 参数:

"-sDEVICE=mswinpr2 -dPDFFitPage -dPrinted=false -dNoCancel -dBATCH -dNOPAUSE -sOutputFile="\spool\HP LaserJet P2050 系列 PCL6 (A4)" "C:\Users\dmeggs\AppData\Local\Temp\iPlan_Printing_k4gjaoip.pdf"

我尝试了许多参数组合,大多数似乎都没有效果。 理想情况下,我希望打印机根据PDF属性打印PDF,因为这将用于打印A4,A3,纵向和横向文档。

谢谢担

添加为新答案,因为它太大而无法评论。

如果 pswrite 和 epswrite 的输出工作正常,则打印机是 PostScript 打印机。

Pdfwrite生成PDF文件,所以大概你不想这样做,因为输入是一个PDF文件:-)一些PostScript打印机实际上也可以打印PDF文件,但这相对不寻常。

与其使用 psweite(或 epswrite),我建议您使用 ps2write(它将生成 PostScript 语言级别 2 作为输出)并将生成的文件发送到打印机。

在理想情况下,您的打印机会根据 PostScript 程序中的介质请求进行介质选择),但并非所有打印机都能做到这一点。部分原因是,如果有多个介质可用,打印机并不总是知道哪个介质在哪个纸盒中。

但是,您可以编写相当简单的PostScript代码,您可以将这些代码附加到文件中,这将允许您确定请求的页面大小。假设您知道如何控制打印机中的托盘/介质选择,您可以让PostScritp程序为您执行此操作。

不幸的是,我无法为您提供有关如何执行此操作的更多详细信息,因为它在很大程度上取决于特定的打印机。

我认为打印机是A4打印机?为了使GS正确缩放页面,您需要告诉它页面大小是多少。它无法从打印机名称中分辨出来。尝试设置 -sPAPERSIZE=a4 -dFIXEDMEDIA

这会将媒体设置为 A4,并告诉 GS 它不能被更改,然后 -dPDFFITPAGE 开关将通过缩放将 PDF 媒体请求适合声明的媒体。

如果这不起作用,那么我需要查看您的 PDF 文件。

最新更新