В одной строке кода shell-сценария больше духа UNIX,
чем в десяти тысячах строк кода на С!
Мастер Фу Если нужно по-быстрому сделать
спуск полос в PDF-файле, то можно воспользоваться следующим простым скриптом.
Допустим, ваша будущая книжка будет содержать 40 страниц (или любое другое число, которое делится нацело на четыре) и будет иметь формат A5, сделанный из страниц исходного формата A4.
0. У вас в системе должны быть установлены пакеты ghostscript и psutils.
1. Создаём файл, скажем, makebook.sh со следующим содержимым:
#!/bin/bash
pdftops $1 - | psbook -s 40 | psnup -P a4 -p a4 -m 0 -b 1 -2 | ps2pdf - `echo $1 | sed -e "s/\.\(\w*\)/_imposed.\1/g"`;
2. Запускаем его в командной строке, подавая аргументом нужный PDF-файл:
$ ./makebook.sh foo.pdf
3. На выходе получаем файл foo_imposed.pdf, в котором рядом с первой страницей напечатана 40-я, рядом со второй - 39-я и т.д.
4. Если нужно сделать книжки другого размера, то можно поиграться с параметрами psnup. Я делал таким образом A4 → A5, A5 → A5, A4 → A6. Причём это работает со всеми PDF-файлами независимо от происхождения. Даже с теми, которые сделаны, например, не к столу будет сказано, в MS-Word.