1

我需要将 PDF 文件打印到一些基于硬件的打印机和一些虚拟 PDF 打印机。我正在使用 Ghostscript 来完成这项任务,编程语言是 C#。

硬件打印机在每个文档之后打印一个 PrintJob 页面,其中包含一些信息,例如日期/时间和文档名称。

虚拟打印机打印文档,但名称不同。(Ghostscript 文档)

使用 Ghost 脚本时我无法更改/或设置文档名称,感谢您的帮助。

using (GhostscriptProcessor processor = new GhostscriptProcessor())
            {
                List<string> switches = new List<string>
            {
                //"-empty",
                "-dPrinted",
                "-dBATCH",
                "-dNOPAUSE",
                "-dNoCancel",
                "-dNOSAFER",
                "-dNumCopies=1",
                "-sDEVICE=mswinpr2",
                "-sDocumentName=" +  String.Format("\"{0}\"",Path.GetFileName(fileName)),
                "-sOutputFile=%printer%" + printerName ,
                "-f",
                fileName
            };
                processor.StartProcessing(switches.ToArray(), null);
            }

开关 'sDocumentName' 不起作用,我仍然看到使用默认名称打印文档 - “Ghostscript Document”

4

1 回答 1

0

确切地说,您所说的“文档名称”是什么意思?你希望在哪里看到这个?

没有DocumentName开关。有一个 DocumentName 参数。如果您在第 10.2 节支持的选项下阅读此处的文档,它清楚地说明了

存在一些无法通过命令行设置的额外选项,

其中包括 DocumentName,因此尝试从命令行设置它显然不会取得任何成果。该文档继续描述如何设置这些参数,因此如果您要更改的是呈现给 Windows 假脱机程序的名称,那么您需要阅读该部分。

于 2019-03-08T15:20:18.390 回答