Re: Печать для бедных: как сделать duplex + n-up printing удобным?
On Tue, Feb 05, 2013 at 04:23:51PM +0200, Oleksandr Gavenko wrote:
...
> Теперь рецепт как делать альбом. У меня была pdf, получаем ps:
>
> $ pdftops -paper A4 -expand model.pdf base.ps
>
> Т.к. статья набиралась как "\documentclass{article}", у нас немного текста
> посрединке страницы и куча гуляющих полей в base.ps. При преобразовании в 2-up
> будет крайне мелкий текст на буквально чистых листах. Потому методом подбора:
>
> $ pstops "0@1.4(-3cm,-7cm)" base.ps good-size.ps
>
> Формат опции команды немного "криптографический":
>
> [-]pageno[L][R][U][H][V][@scale][(xoff,yoff)]
>
> Я увеличил размер и опустил содержимое на странице. Далее делаем 2-up:
>
> $ psnup -2 good-size.ps 2up.ps
>
Для этих целей ("растяжки" содержимого и сортировки) есть ещё пакет
impose+. Он нацелен на то, чтоб всё делать автоматически. Там несколько
утилит:
impose -- увеличивает область вывода текста на странице;
psbl -- сортирует страницы "книжечкой" (там под обёрткой используются
те же psutils).
У неё есть один недостаток. При работе не в интерактивном режиме
(например, из Makefile), трудно определить, какой файл будет на
выходе. При работе же с использованием ключа -impose_options -stdout
кроме собственно postscript-документа на стандартный вывод выводятся
также лишние строки. Этого можно избежать например так:
psbl -impose_options -stdout infile.ps |tail -n+5|head -n-1 > outfile.ps
fixtd -- вставляет директивы tumble и duplex в ps-файл -- помогала
чинить мне ps-файлы, собираемые с помощью dvips, которые никак не
хотели печататься в дуплексе на принтере с его поддержкой;
bboxx -- выдаёт для страниц BoundingBox (мне не понадобилась).
Буклеты для файлов latex можно сразу собирать с помощью пакета 2up.
Я писал следующий кусок преамбулы в файл и подключал этот файл, если
нужен был, с помощью "\input{booklet}":
\usepackage{2up}
\targetlayout{Booklet}
\target{\magstepminus1}{297mm}{210mm}
\source{\magstep0}{210mm}{297mm}
\special{landscape} %% This works with Rokicki's dvips
\setlength{\pagesepwidth}{.1pt}
С pdflatex не пробовал, правда. Давно дело было.
Тут где-то проскакивало недавно, что современный CUPS нативно кушает
pdf, так что может быть имеет смысл пользоваться pdftk для постобработки
перед печатью вместо psutils. Эта программа тоже многое умеет.
--
http://vzhbanov.byethost33.com
Reply to: