Як розділити PDF на кілька сторінок командного рядка?


8

Як я можу розділити (плитку?) Один величезний PDF на кілька сторінок? Результатом може бути один PDF-файл з декількома сторінками формату А4 або декілька форматів PDF в форматі A4.

Хоча я створив PDF за допомогою, dotя б хотів вирішити цю проблему взагалі - або принаймні на стандартному Ubuntu (наприклад, 12.04).

Вхідний PDF був сформований Graphviz dot, наприклад. dot -Tpdf sample.dot > sample.pdf. Коли я не додав size="8,11"; ratio="fill";до графіка, вихідний PDF дуже великий. Якщо я додаю розміри / підказки для заповнення dot, для мене лише зменшені речі.

Наведемо один приклад:

Якщо мій оригінальний PDF був таким величезним:

+-------------------+
|                   |
|  O                |
|  :                |
|  :..........C     |
|  :        :       |
|  :        :       |
|  :        :       |
|  :        G       |
|  :        :       |
|  :        :       |
|  :        :       |
|  :        :       |
|  U        :       |
|           B       |
|                   |
+-------------------+

Це слід розділити на команду типу

pdftile sample.pdf -x 2 -y 3 > sample-2x3.pdf

в

+---------+---------+
|         |         |
|  O      |         |
|  :      |         |
|  :......|...C     |
|  :      | :       |
+---------+---------+
|  :      | :       |
|  :      | :       |
|  :      | G       |
|  :      | :       |
|  :      | :       |
+---------+---------+
|  :      | :       |
|  :      | :       |
|  U      | :       |
|         | B       |
|         |         |
+---------+---------+

Я заглянув у набір інструментів pdfjam, але, здається, ця функція там не реалізована. Я хотів би, щоб це був інструмент командного рядка - і він повинен бути автоматизованим, а не вручну


Дивіться також superuser.com/questions/54054 та копії кандидатів.
Skippy le Grand Gourou

Відповіді:


7

Схоже, pdfposter може це зробити.


Так, це обіцяє зробити, але це не спрацює :-(
Рене Ніффенеггер

@ RenéNyffenegger: pdfposter, здається, для деяких людей зламаний. Дивіться цей звіт про помилку для вирішення.
tonysdg

Точно те, що я шукав, у мене великий PDF-файл із діаграмою ERD, сформований за допомогою rails-erd та graphviz, я міг перетворитись на файл із кількома сторінками. pdfposter -p2x999a4дав мені 22 сторінки, -p999x2a444 сторінки
Матьє Ж.

5

Насправді mutoolмайже такий же синтаксис, як і той, який ви пропонуєте (ви його автор ??):

mutool -x 2 -y 3 sample.pdf sample-2x3.pdf

Щоб встановити mutool, просто встановіть mupdf, який, ймовірно, постачається з більшості дистрибутивів GNU / Linux.


працював як мрія зруйнувати свій плакат A0 до версії A3 для чорнового друку.
оліверсм

4

Погляньте на http://www.graphviz.org/doc/FAQ.html : Q14. Як можна надрукувати великий графік на кількох сторінках?

Атрибут сторінки, якщо він встановлений, вказує Graphviz друкувати графік як масив сторінок заданого розміру. Таким чином, графік

диграф G {page = "8.5,11"; ...}

відображатиметься як 8,5 на 11 дюймових сторінках. Під час друку сторінки можуть бути викладені плиткою, щоб зробити малюнок всього графіка. В даний час функція працює лише з вихідним кодом PostScript. Крім того, є різні інструменти та глядачі, які дозволять зробити велику картину і дозволяти витягувати фрагменти сторінки, які потім можна буде надрукувати.

ТІЛЬКИ Постскрипт! Але для автоматизації немає showstopper :-). Просто нехай PS2pdf перебігає його. Це працювало для мене.


3

На думку приходять декілька утиліт Linux:

(зі своїх сторінок)

pdfseperate [ параметри ] INPUT.PDF OUTPUT% d.PDF

читає INPUT.PDF, витягує одну або кілька сторінок і записує один PDF-файл для кожної сторінки в OUTPUT% d.PDF (% d є заповнювачем для номера сторінки) (з пакета 'poppler-utils')

pdftk INPUT.PDF лопнув

читає INPUT.PDF, створюючи один або кілька файлів PDF, що містять окремі сторінки, з назвою 'pg-XXXX.pdf' (якщо не вказано назву вихідного файлу) (з пакета 'pdftk')

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.