У меня есть требование распечатывать файлы PDF на некоторых аппаратных принтерах и на некоторых виртуальных принтерах PDF.Я использую Ghostscript для этой задачи и язык программирования C #.
Аппаратные принтеры печатают страницу PrintJob после каждого документа, где есть некоторая информация, такая как дата / время и имя документа.
Виртуальные принтеры печатают документ, но с другим именем.(Ghostscript Document)
Я не могу изменить / или установить имя документа при использовании Ghost Script, любая помощь приветствуется.
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"