39

Когда я пытаюсь объединить два файла .pdf с помощью Imagemagick

convert pdf1.pdf pdf2.pdf temp.pdf

Полученный файл temp.pdf имеет очень низкое разрешение. Как сохранить разрешение таким же, как в исходных файлах?

6 ответов6

48

Барнс прав, но если pdftk не работает, попробуйте ghostscript.

gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=temp.pdf pdf1.pdf pdf2.pdf
18

Команда преобразования Imagemagick обычно используется для преобразования файлов изображений из одного формата в другой, и в этом случае возможно, что она фактически выполняет внутреннее преобразование сортов перед выводом двух "изображений" (PDF-файлов) в один файл.

Я бы посоветовал вам вместо этого использовать PDF Toolkit (pdftk) http://www.accesspdf.com/pdftk/

Из примеров на сайте это должно быть так просто:

pdftk pdf1.pdf pdf2.pdf cat output temp.pdf
16

Если каждый файл, который вы хотите объединить, находится в одной папке:

convert -density 150 $(ls -rt *pdf) output.pdf

плотность аргумента -density 150 сохраняет качество объединенных PDF-файлов.

7

Я всегда забываю, как это сделать, и сначала найду этот вопрос, когда буду искать.

convert -density 600 file1.pdf file2.pdf -resize 50% new.pdf

Связанный пример имеет плотность 144, однако, она никогда не была достаточно высокой, чтобы не выглядеть пиксельной.

http://web.archive.org/web/20130311071316/http://studio.imagemagick.org/pipermail/magick-users/2009-September/022958.html

3

Если вы используете Linux, вы также можете попробовать poppler, который предоставляет pdfunite который объединяет, не манипулируя разрешением.

0

Я не смог найти никакого способа объединить два файла PDF, сохранив при этом хорошее разрешение и текст без изменений, но я нашел способ преобразовать его в файл PNG с высоким разрешением.

pdftoppm -f 1 -l 1 -aa yes -aaVector yes -png -r 300 page.pdf > tmp1.png
pdftoppm -f 2 -l 2 -aa yes -aaVector yes -png -r 300 page.pdf > tmp2.png
convert tmp1.png tmp2.png +append -quality 100 page.png

Это займет первые две страницы файла page.pdf и объединит их в файл png с высоким разрешением.

Изменение последней строки на

convert tmp1.png tmp2.png +append -quality 100 page.pdf

приведет к выводу документа в формате pdf, как я позже выяснил после того, как возился с pngtopnm, pnmtops, ps2pdf.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .