Я хочу создать очередь печати CUPS, которая принимает книги со страницами формата A5 и автоматически распределяет их в виде буклетов на бумаге формата A4 перед их печатью. По сути, это сделано чудесным образом, используя следующую трубу:
psbook -s4 | psnup -Pa5 -pa4 -2
Я создал очередь CUPS, которая использует этот канал, и все работает отлично, страницы располагаются и печатаются точно так, как я хочу, за исключением того, что вывод из psnup
смущает мой принтер, а параметры дуплексной передачи игнорируются (возможно, ошибка debian 168954). Я обнаружил в Интернете утверждения о том, что psutils не работает, что предлагает обходной путь, но, поскольку я не понимаю, как предполагается использовать обходной путь, я пытаюсь повторить поведение psbook
и psnup
с другими инструментами (pstops
и mpage
теперь).
Проблема в том, что все инструкции по созданию буклетов в Интернете предполагают, что у меня есть страницы формата А4, которые я хочу уменьшить до А5 и превратить в буклет, и, к сожалению, я не делаю ничего такого безумного. Я хочу что-то попроще - возьмите страницы А5 и расположите их на страницах А4. Вопрос в том, как?
Я придумал следующую спецификацию страниц для pstops
которая уменьшает страницы формата A4:
4:3L@0.7(21cm,0)+0L@0.7(21cm,14.85cm),1L@0.7(21cm,0)+2L@0.7(21cm,14.85cm)
И если я заранее увеличу свои страницы формата A5 до A4, это сработает. К сожалению, все немного смещено (масштаб, границы), и я не могу изменить спецификации страниц, чтобы правильно расположить страницы формата A5.
Я попытался поместить страницу A5 посередине страницы A4 и использовать масштаб @1
, но когда я корректирую смещения, мой текст все равно обрезается.
И кажется, что mpage
предназначен только для масштабирования, я не мог найти способ заставить его не масштабироваться.
PS Я проверил, что полученный файл postscript содержит все параметры дуплекса непосредственно перед поступлением на принтер, хотя CUPS добавляет некоторые из них дважды (поскольку печать проходит через две очереди)