Это можно сделать, комбинируя четыре ингредиента правильно:
- настройка очереди печати с драйвером принтера PostScript, совместно используемая в локальной сети;
- Ghostscript (прокрутите вниз для получения
gs871w{32,64}.exe
) для преобразования PostScript в изображение;
- RedMon (скачать
redmon17.zip
) для использования в качестве «монитора порта принтера»;
- пакетный файл DOS (или программа C #, если хотите), чтобы делать именно то, что вы хотите;
В очереди печати будет использоваться ' Красный Порт irector Пн итор' (RedMon) для направления входящих заданий 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 '-'!