使用GhostScript(V9.05)打印不同尺寸的PDF时出现问题。
有问题的PDF是A3版本,但是当使用以下命令行参数使用ghost脚本打印时,结果将以A4纵向打印并切断一半内容。
Commad行参数:
“ - sDEVICE = mswinpr2 -dPDFFitPage -dPrinted = false -dNoCancel -dBATCH -dNOPAUSE -sOutputFile =”\ spool \ HP LaserJet P2050 Series PCL6(A4)“”C:\ Users \ dmeggs \ AppData \ Local \ Temp \ iPlan_Printing_k4gjaoip.pdf “”
我尝试了很多参数组合,大多数似乎都没有效果。理想情况下,我希望打印机根据PDF属性打印PDF,因为这将用于打印A4,A3,纵向和横向文档。
由于 丹
答案 0 :(得分:2)
添加新答案,因为它太大而无法发表评论。
如果pswrite和epswrite的输出有效,则打印机是PostScript打印机。
Pdfwrite生成PDF文件,所以大概你不想这样做,因为输入是一个PDF文件:-)有些PostScript打印机实际上也可以打印PDF文件,但这是比较不寻常的。
我建议您使用ps2write(它将产生PostScript语言级别2作为输出)而不是使用psweite(或epswrite),并将生成的文件发送到打印机。
在理想的世界中,您的打印机将根据PostScript程序中的媒体请求进行媒体选择),但并非所有打印机都会对此进行管理。部分原因是打印机并不总是知道哪个介质在哪个托盘中,如果有多个介质可用。
但是,您可以编写相当简单的PostScript代码,您可以将其添加到文件中,以便您确定所请求的页面大小。假设您知道如何控制打印机中的托盘/介质选择,您可以让PostScritp程序为您执行此操作。
不幸的是,我无法详细介绍如何执行此操作,因为它在很大程度上取决于特定的打印机。
答案 1 :(得分:1)
我认为打印机是A4打印机?为了让GS正确缩放页面,您需要告诉它页面大小是多少。它无法从打印机名称中分辨出来。尝试设置-sPAPERSIZE = a4 -dFIXEDMEDIA
将媒体设置为A4,告诉GS无法更改,-dPDFFITPAGE开关将通过缩放将PDF媒体请求适合声明的媒体。
如果这不起作用,那么我需要查看您的PDF文件。