Я пытаюсь напечатать файл (PDF), без вмешательства. Не для Automator, я могу иметь дело с applecript или терминалом или чем-то еще. Особенности того, что я хочу:
- Печать на определенный принтер
- Печать на определенный размер страницы (нестандартный)
- Автоповорот (опционально)
- Масштаб, чтобы соответствовать, распечатать всю страницу (в конечном итоге 109 до 112%. 110% работает)
Я могу сделать это вручную через меню печати в Preview, только размер страницы не по умолчанию, но я хочу как-то автоматизировать его, перетаскивая.
Вещи, которые я пытался:
- Если я печатаю из Finder, он использует предварительный просмотр, но он выходит за пределы размера и имеет неправильный размер страницы.
- Если я перетащу его на принтер в ~ / Library / Printers / printername, это похоже на использование LP, но без параметров.
- Параметры печати в Applescript плохо документированы.
- Automator "Print Finder Items" это как # 1.
- «Печать изображений» в Automator похожа на предварительный просмотр, но «Масштабировать по размеру» не работает так, как предварительный просмотр, я не могу выбрать размер страницы, а «Автоповорот» не работает вообще.
- Если я печатаю из терминала через LP или LPR, я могу установить размер страницы и ориентацию / подгонку к странице, но я не могу масштабировать ее до 110%. Это самое близкое к тому, что я хочу.
Как я могу это сделать? Это не должно быть так сложно, я хочу делать то, что может графический интерфейс, а не как дополнительные функции.
В худшем случае, как я могу эмулировать управление мышью или клавиатурой в меню предварительного просмотра? Все, что для этого потребуется: 1. открыть файл, 2. открыть меню печати, 3. переключиться на предустановку или размер страницы, так как все остальные параметры, включая масштабирование, установлены по умолчанию . 4. нажать print / enter.
Ответы:
Давайте разделим проблему на две части: масштабирование и печать.
пересчет
Вы можете масштабировать PDF в командной строке. Подумайте о создании временного, масштабированного PDF для печати.
Посмотрите масштабирование содержимого PDF и размеров страницы из командной строки для предлагаемых подходов к этому. Ответ с наибольшим количеством голосов предлагает использовать cpdf с такой командой:
Альтернативный инструмент есть
sips
. Этот инструмент включен в OS X и на удивление способен.печать
Как вы обнаружили, системой печати OS X является Common Unix Printing System (CUPS). CUPS включает в себя инструмент командной строки,
lpr
который может принять все необходимые настройки и параметры .Для печати PDF через командную строку смотрите:
Для просмотра списка доступных принтеров используйте:
Чтобы распечатать файл PDF на принтере по умолчанию, используйте:
источник
pipe
и сделать весь Шебанг одновременно? как:cpdf -scale-page "1.1 1.1" in.pdf | lpr
?cpdf
этим может быть возможно. Сsips
ним придется идти через файл. Я подозреваю, что короткий сценарий bash или даже капля AppleScript хорошо бы завершили команду.В конечном итоге я использовал
open
иosascript
вместе с инструментомpdfcrop
пользователя форума MacRumor Oligarch (резервное копирование Wayback Machine в архив )⌘-Delete
файлы.⌘-P
распечатать оба файла. Единственное, что мне нужно сделать, это изменить размер бумаги, предварительный просмотр обрабатывает масштабирование.Очевидно, что он не делает все, что я хочу, но он помогает уменьшить объем ручной обрезки и перемещаться вперед и назад, чтобы печатать все, что мне нужно, для печати.
Поскольку CPDF может масштабироваться и обрезаться, все должно быть проще сделать из командной строки. Мне просто нужно проверить это.
источник