GhostScript 以静音模式打印到网络打印机

GhostScript 以静音模式打印到网络打印机

我正在尝试在静默模式下从命令行将 PDF 打印到网络打印机。
不幸的是,Ghost Script 打开了 Windows 打印机对话框。

我用Windows 2008 R2 Server

我的命令是:

gswin64c.exe -dBATCH -dNOPAUSE -dNumCopies=1 -sDEVICE=mswinpr2 -sOutputFile="%printer%MEasyCoder PC4 (203 dpi) on aino1" "pdf.pdf"

打印机名称为:MEasyCoder PC4 (203 dpi) on aino1并且它是连接到AINO1计算机的网络打印机。

打印机对话框如下所示:

Windows 打印机对话框

在打印机面板中它看起来像:打印机控制面板

什么是正确的命令行来避免此对话框并静默打印?

答案1

使用 GhostScript (gswin32c.exe) 在静默模式下打印到网络打印机的正确方法是使用 \\spool\,然后在 sOutput 上使用完整的 UNC 路径。所有参数都区分大小写。另外,请务必包含双引号。

gswin32c.exe  -dPrinted -dBATCH -dNOPAUSE -dNOSAFER -q -dNumCopies=1 -sDEVICE=mswinpr2 -sOutputFile="\\spool\\\SRV-SBS01\iR-ADVC5030_PS_BW" "C:\Windows\Temp\~Packlist.pdf"

答案2

根据 Ghostscript 输出设备、MS Windows 打印机的详细信息

如果在 -sOutputFile 中使用以下格式指定了 Windows 打印机名称"%printer%printer_name",例如:

gs ... -sOutputFile="%printer%Apple LaserWriter II NT" 

然后 Ghostscript 会尝试打开 Windows 打印机而不提示(当然,除非打印机已连接到 FILE:)。Ghostscript 会尝试设置 Windows 打印机页面大小和方向以匹配 Ghostscript 的预期,但并不总是成功。它使用以下算法:(此处未引用)

示例命令为(来源):

gswin64c.exe -sDEVICE=mswinpr2 -dBATCH -dNOPAUSE -sOutputFile="%printer%\\printServer\printerNameWith Spaces" testprinter.ps

答案3

我用冲刺,它使用 GhostScript。您需要下载GhostGum 为打印功能构建的旧版本 5。如果您使用默认安装设置,gsprint将位于此处:C:\Program Files\Ghostgum\gsview

例如:

gsprint -printer "\\ain01\MEasyCoder PC4 (203 dpi)" -dPDFFitPage "pdf.pdf"

答案4

你必须使用\\

%printer%\\ainoMEasyCoder...

相关内容