Печать PDF с помощью Ghostscript. NET wrapper - Пустые страницы - PullRequest
0 голосов
/ 03 августа 2020

Я печатаю файл PDF с помощью оболочки Ghostscript. NET. Печать работает нормально, но перед фактической печатью появляются 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)

1 Ответ

0 голосов
/ 03 августа 2020

Я действительно сомневаюсь, что вы хотите поместить -c в свою командную строку; который вводит последовательность программы PostScript. Предполагая, что ваш файл является файлом PDF, вы действительно не хотите этого делать. Даже если это программа PostScript, это обычно приводит к тому, что Ghostscript будет рассматривать файл имя (а не содержимое) как программу PostScript, что, как я ожидаю, вызовет ошибку.

И действительно, когда я пробую это здесь из командной строки, он выдает ошибку. Я понятия не имею, какой эффект это будет иметь с Ghostscript. NET.

Я бы посоветовал вам не использовать -dNOSAFER, поскольку это обходит всю безопасность. Конечно, возможно, вы знаете происхождение всех печатаемых файлов, и в этом случае это безопасно. Но все же я не понимаю, зачем вы его использовали.

...