Как сделать так, чтобы ghostscript печатал pdf в кластере при сбое по локальной очереди?
У меня есть приложение, которое выполняет печать физических документов в локальных очередях. Тем не менее, так как это приложение выполняется в среде отказоустойчивости кластера, я не могу перечислить или использовать очереди печати из среды отказоустойчивости кластера. Ghostscript перечисляет только очереди с локального сервера (в качестве отдельной установки).
Есть ли способ распечатать с использованием очереди кластера, не разделяя (устанавливая) ее безумно?
Я использую командную строку для этой цели:
-q -dBATCH -dNOPAUSE -dNODISPLAY -c "mark /Duplex true /NoCancel true /OutputFile (%printer%Ricoh c2051) /UserSettings << /DocumentName (Test) >> (mswinpr2)finddevice putdeviceprops setdevice" -f "duplex.pdf"
использование \ server \ имя принтера не работает.
1 ответ
Нет, невозможно распечатать Ghostscript на принтере, который недоступен для локальной системы. Я объяснил причину этого в другом посте недавно, но здесь это снова:
При печати "ввода" (PostScript, PDF, XPS, PCL, PXL) на физическом принтере в системе Windows (с использованием устройства mswinpr2) Ghostscript не требуется знать какие-либо характеристики принтера. Что он делает, так это запрашивает характеристики принтера для выбранного принтера из Windows, а затем переводит входные данные в растровое изображение требуемого размера. Он создает контекст устройства, совместимый с принтером, и помещает растровое изображение в контекст устройства. Затем он сообщает контексту устройства, что нужно распечатать себя на принтере.
Windows берет на себя все заботы по преобразованию растрового изображения в нечто подходящее для принтера, используя подсистему печати Windows и, в частности, драйвер принтера Windows.
В результате устройство mswinpr2 может печатать только на принтере, который известен системе Windows, на которой он работает. Если вы не можете вывести список принтеров из Windows, mswinpr2 не сможет распечатать его.