17 мар. 2013 г.

Спуск полос в Debian

Примечание: материал взят из http://debback.blogspot.com/2009/01/blog-post.html

Для печати книги необходимо провести такую процедуру, как спуск полос. Этот загадочный термин означает в типографии размещение нескольких страниц на одном листе бумаги. Естественно, что страницы должны быть в правильном порядке, чтобы после нарезки и сгибания листов мы с вами читали книгу последовательно, начиная с первой странички, и заканчивая последней.

Для ненавистных мне форточек существует довольно много программ и плагинов, позволяющих выполнить в домашних условиях спуск полос. Однако, найти такую программу для Linux оказалось сложнее. Вероятно, в виду отсутствия большого ассортимента. На многих форумах я даже натыкался на заявление о том, что под Linux таких программ просто нет. Наверное, это было давно и неправда.

Чтобы сделать спуск полос, устанавливаем полезный пакет утилит для работы с файлами postscript:

$ sudo apt-get install impose+

И кидаем в папку ~/bin файлик make_book со следующим содержимым:

#!/bin/bash
pdftops $1 - | psbook | psnup -m 0 -b 1 -2 | ps2pdf - `echo $1 | sed -e "s/\.\(\w*\)/_book.\1/g"`;


Не забудьте сделать этот файл исполняемым:

$ chmod u+x make_book

Чтобы подготовить книгу к печати, просто воспользуйтесь вашим сриптиком (само собой, папку ~/bin нужно прописать в $PATH):

$ make_book my_book.pdf

После этого остается только распечатать файл my_book_book.pdf. Печатаем сначала четные страницы, переварачиваем, и печатаем нечетные. Или наоборот. Или в обратном порядке. Или сразу в один проход. Это уже зависит от модели вашего принтера. В любом случае, думаю, испортив несколько потенциальных книг Вы поймете, как делать правильно. Поэтому, рекомендую тренироваться на маленьких книгах. Сказка для колобка подойдет. Если найдете ее в формате PDF :)

Теперь разберем подробнее, что делает эта длинная команда.

pdftops — преобразовывает PDF в PostScript. Именно в этом формате мы будем превращать документ в книгу.

psbook — пересортировывает страницы в сигнатуры. Проще говоря, на выходе страницы располагаются в таком порядке, в каком они шли бы на отдельных листах тетради. Здесь стоит обратить внимание на некоторые подробности. Если Вы возьмете в руки хорошую книгу с хорошим переплетом, и внимательно посмотрите на нее то, возможно, обратите внимание, что она состоит из множества тетрадочек. Это замечательный способ сделать надежную прочную толстую книжку. И это не так уж сложно, как может показаться на первый взгляд. Первый экземпляр книги я сделал именно таким методом. Однако, это занимает некоторое время. Если вам не нужна красата, а нужно быстро напечатать и прочесть, то лучше распечатать одной тетрадью. А если Вы все же решили взяться за дело серьезно, то в помощь вам придет параметр ’-s’, после которого нужно указать число страниц в каждой тетрадке (кратное 4-м).

psnup — укладывает страницы на один лист. параметры ’-m’ и ’-b’ задают отступы вокруг листа и вокруг страницы соответственно.

ps2pdf — конвертирует результат из PostScript обратно в PDF. Здесь с помощью sed имя конечного файла формируется на основе исходного с суфиксом ’_book’. В принципе, возможно, Вам нет необходимости конвертировать обратно в PDF. Можно сразу печатать файл PostScript. Но у меня с принтером Epson Stylus CX8300 на бумаге почему-то получается низкое разрешение и всяческие неприятные артефакты. Где-то на каком-то форуме встречал аналогичную жалобу владельца принтера Epson. А конвертация в PDF эту проблему снимает.

Комментариев нет: