Я пытаюсь распечатать документ PDF с помощью ghostscript. Я использую оболочку GHOSTPRINT.NET. Я смог добиться отправки вывода на принтер, однако он остается в состоянии буферизации. Не уверен, что это связано с переключателями, которые я использую, или с самим файлом. Любая помощь будет оценена. Вот код:Попытка печати PDF с использованием GhostScript
public static void PrintFormPdfData(byte[] formPdfData, string printer)
{
string tempFile;
tempFile = Path.GetTempFileName();
using (FileStream fs = new FileStream(tempFile, FileMode.Create))
{
fs.Write(formPdfData, 0, formPdfData.Length);
fs.Flush();
}
using (GhostscriptProcessor processor = new GhostscriptProcessor())
{
List<string> switches = new List<string>();
switches.Add("-empty");
switches.Add("-dPrinted");
switches.Add("-dBATCH");
switches.Add("-dNOPAUSE");
switches.Add("-dNOSAFER");
switches.Add("-dNumCopies=1");
switches.Add("-sDEVICE=mswinpr2");
switches.Add("-sOutputFile=%printer%" + printer);
switches.Add("-f");
switches.Add(tempFile);
processor.StartProcessing(switches.ToArray(), null);
}
}
Hey KenS, еще раз спасибо за вашу поддержку с GS. Я считаю, что моя проблема больше связана с данными, которые я пытаюсь напечатать, чем GS или GhostScript.NET. – Crumblenautjs
Хм, хорошо это возможно обязательно. Я все равно попробую его из командной строки. Если вы считаете, что этот ввод сомнительный, просто запустите «gswin32» и отобразится на дисплее. Должен хотя бы сказать вам, есть ли входной файл в порядке. –
KenS
Я использую командную строку gswin32 «C: \ TEMP \ report.jpg», но я получаю ошибку операнда. У меня есть файл, который я хотел бы распечатать в этом файле. Каков правильный синтаксис, чтобы попытаться напечатать файл, расположенный по этому пути? – Crumblenautjs