Печать с помощью ghostscript в автоматическом режиме

Я использую следующую команду Ghostscript для печати документа postscript:

C:Program Filesgsgs9.14bin>gswin64c.exe -sDEVICE=mswinpr2 testprinter.ps

эта команда открывает диалоговое окно печати, в котором можно изменить принтер, указать диапазон печати и копии, а также кнопки Ok и отмена.

однако мое требование состоит в том, чтобы Ghostscript просто печатал молча, подавляя диалоговое окно печати.

есть ли команда, переключатель, который позволит мне печатать молча? Так что я могу просто выполнить команду и печать на принтере она.

Я не мог получить какую-либо информацию от Google или других различных документов Ghostscript, доступных в интернете. Так что хотелось бы уточнить у доброжелательных и знающих супер пользователя сообщество.

25
задан Chaitanya MSV
24.01.2023 13:20 Количество просмотров материала 2692
Распечатать страницу

1 ответ

извлеченные из документация ghostscript, принтеры MS Windows

если в-sOutputFile, Ghostscript не указано имя принтера Windows запрос принтера Windows с помощью стандартного диалогового окна настройки печати коробка. ...

если имя принтера Windows указано в-sOutputFile с помощью формат "% printer%printer_name", например

gs ... -sOutputFile="%printer%Apple LaserWriter II NT" 

затем Ghostscript пытается открыть принтер Windows без запрос (за исключением, конечно, если принтер подключен к файлу:)

в зависимости от того, как окончательный процесс должен работать, может быть, вам понадобится -dBATCH и -dNOPAUSE коммутаторы

Примечания:%printer% является литералом Ghostscript, но синтаксис столкнется с cmd парсер, который видит %printer% как операция чтения переменной.

внутри пакетных файлов знаки процента можно избежать, удваивая их (%%printer%%) но в режиме командной строки нет никакого способа избежать знака процента, если он находится внутри заключенной в кавычки строки (как показано в документации, они необходимы для обработки пробелов в аргументах).

в режиме командной строки есть два варианта:

  • обеспечить printer переменная окружения не существует (если она не существует, то операция чтения не выполняется и литерал %printer% сохраняется в последней выполненной команде).
  • определить некоторая переменная среды, поэтому при выполнении операции чтения результирующая команда будет правильной.

лишь некоторые примеры командной строки:

rem ensure the variable does not exist
set "printer="
gs ... -sOutputFile="%printer%Apple LaserWriter II NT"

rem store the full literal
set p=%^printer%
gs ... -sOutputFile="%p%Apple LaserWriter II NT" 

rem store the percent sign
set "p=%"
gs ... -sOutputFile="%p%printer%p%Apple LaserWriter II NT"     
7
отвечен MC ND 2023-01-25 21:08

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх