Это можно сделать, правильно комбинируя четыре компонента:
- настройка очереди печати с драйвером принтера PostScript, совместно используемая в локальной сети;
- Ghostscript (прокрутите вниз, чтобы получить
gs871w{32,64}.exe
), чтобы преобразовать PostScript в изображение; - Redmon (скачать
redmon17.zip
), чтобы служить «монитором порта принтера»; - пакетный файл DOS для выполнения именно того, что вы хотите;
В очереди печати будет использоваться порт * Red -irector Mon -itor 'длянаправьте входящие задания PostScript в программу / приложение / пакетный сценарий по вашему выбору.
Осталось сделать вашу работу: написать простую программу / приложение / пакетный сценарий, которая выполняет три действия:
- принять входящий PostScript в качестве ввода,
- вызвать командную строку Ghostscript для преобразования ввода в% imageformat% по вашему выбору,
- и, наконец, отправить% imageformat% в качестве заданий на принтерна ваш выбор.
Вот документ тВ этой статье описаны некоторые основные сведения о RedMon:
Вот несколько дополнительных советов:
Если вы новичок в Ghostscript, у вас, вероятно, будет самая большая проблема с созданием командной строки, которая будет делать то, что вам нужно.Вот несколько примеров.
Первый будет преобразовывать данные, поступающие со стандартного ввода (стандартный ввод, -
в конце команды), в одностраничный черно-белый TIFF G4 с разрешением 600 точек на дюйм, где каждая страницаотдельный файл с именем page_001.tif
, page_002.tif
и т. д.:
gswin32c ^
-dBATCH ^
-dNOPAUSE ^
-dSAFER ^
-sDEVICE=tiffg4 ^
-r600x600 ^
-sOutputFile=c:/path/to/output/page_%03d.tif ^
- ### <-- note this!
Вот командная строка Ghostscript, которая генерирует тот же вывод, но на этот раз как один многостраничный TIFF G4:
gswin32c ^
-dBATCH ^
-dNOPAUSE ^
-dSAFER ^
-sDEVICE=tiffg4 ^
-r600x600 ^
-sOutputFile=c:/path/to/output/multi_page_g4.tif ^
- ### <-- note this!
Вам не нужен черный + белый G4 TIFF, но цветной TIFF, 32-битный CMYK?ОК, используйте другое устройство вывода для Ghostscript:
gswin32c ^
-dBATCH ^
-dNOPAUSE ^
-dSAFER ^
-sDEVICE=tiff32nc^
-r600x600 ^
-sOutputFile=c:/path/to/output/multi_page_color.tif ^
- ### <-- note this!
Вы хотите JPEG?Извините, нет такой вещи, как многостраничный JPEG.Но на одной странице нет проблем:
set outputname=some-uniq-name && ^
gswin32c ^
-dBATCH ^
-dNOPAUSE ^
-dSAFER ^
-sDEVICE=jpeg ^
-dJPEGQ=95 ^
-r600x600 ^
-sOutputFile=c:/path/to/output/%outputname%-page_%03d.jpeg ^
- ### <-- note this!