我正在使用Ghostscript.NET包装器打印一个PDF文件。打印工作正常,但实际打印前出现2张空白页。有谁能帮帮我吗?我在下面的代码中做错了什么吗?顺便说一下,我们的打印机很小,是用来打印条形码的。
Dim processor As Ghostscript.NET.Processor.GhostscriptProcessor = New Ghostscript.NET.Processor.GhostscriptProcessor()
Dim switches As List(Of String) = New List(Of String)
switches.Add("-empty")
switches.Add("-dPrinted")
switches.Add("-dBATCH")
switches.Add("-dNOPAUSE")
switches.Add("-dNOSAFER")
switches.Add("-dDEVICEHIGHTPOINTS=85")
switches.Add("-dDEVICEWIDTHPOINTS=90")
switches.Add("-dFIXEDMEDIA")
switches.Add("-dPDFFitPage")
switches.Add("-sDEVICE=mswinpr2")
switches.Add(Convert.ToString("-sOutputFile=%printer%") + _printerName)
switches.Add("-c")
switches.Add(_pdfFile)
processor.StartProcessing(switches.ToArray(), Nothing)发布于 2020-08-03 18:08:00
我真的怀疑您是否想在命令行中放入-c;这会引入PostScript程序序列。假设你的文件是一个PDF文件,你真的不想这样做。即使它是一个PostScript程序,这通常也会导致Ghostscript将文件名(而不是内容)视为PostScript程序,我认为这会产生一个错误。
事实上,当我从命令行尝试时,它会抛出一个错误。我不知道这会对Ghostscript.NET有什么影响。
我建议你不应该使用-dNOSAFER,因为它绕过了所有的安全性。当然,您可能知道要打印的所有文件的出处,在这种情况下,它是安全的。但我还是不明白你为什么要用它。
https://stackoverflow.com/questions/63226195
复制相似问题