Как объединить несколько файлов PDF?

В Windows существует множество программ для объединения PDF-файлов, но как мы можем сделать то же самое в Ubuntu?

471
задан 8 October 2014 в 05:04

13 ответов

PDF-Shuffler (install)

Если вам нужен инструмент с простым графическим интерфейсом, попробуйте pdfshuffler. Он позволяет объединять PDF-файлы, а также переупорядочивать и удалять страницы. Для пакетной обработки и/или более сложных задач pdftk, конечно же, более мощный.

Screenshot of PDF-Shuffler

250
ответ дан 8 October 2014 в 05:04

pdftk

Для объединения двух PDF-файлов, file1.pdf и file2.pdf:

pdftk file1.pdf file2.pdf cat output mergedfile.pdf

Дополнительная информация доступна здесьWay Back Machine.

Для установки запустите:

sudo snap install pdftk
410
ответ дан 8 October 2014 в 05:04

Ghostscript - это пакет (доступный по умолчанию в Ubuntu), который позволяет просматривать или распечатывать файлы PostScript и PDF в других форматах или конвертировать эти файлы в другие форматы. .
Чтобы использовать Ghostscript для объединения файлов PDF, введите что-нибудь вроде следующего:

gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dAutoRotatePages=/None -sOutputFile=finished.pdf  file1.pdf file2.pdf

Вот краткое объяснение команды:

gs         starts the Ghostscript program.
-dBATCH    once Ghostscript processes the PDF files, it should exit.
           If you don't include this option, Ghostscript will just keep running.
-dNOPAUSE  forces Ghostscript to process each page without pausing for user interaction.
-q         stops Ghostscript from displaying messages while it works
-sDEVICE=pdfwrite 
           tells Ghostscript to use its built-in PDF writer to process the files.
-sOutputFile=finished.pdf
           tells Ghostscript to save the combined PDF file with the specified name.
-dAutoRotatePages=/None
           Acrobat Distiller parameter AutoRotatePages controls the automatic orientation selection algorithm: For instance: -dAutoRotatePages=/None or /All or /PageByPage.

Ваши входные файлы даже не обязательно должны быть файлами PDF. Вы также можете использовать файлы PostScript или EPS или любую их комбинацию.

С Ghostscript можно многое сделать. Вы можете прочитать его документацию для получения более подробной информации.

Источник

202
ответ дан 8 October 2014 в 05:04

Вы также можете использовать pdfunite для объединения документов pdf:

pdfunite in-1.pdf in-2.pdf in-n.pdf out.pdf

Чтобы установить pdfunite , если он еще не установлен, выполните:

sudo apt-get install poppler-utils
114
ответ дан 8 October 2014 в 05:04

PDF Chain Install PDF Chain

PDFChain - очень хорошее решение. Этот графический интерфейс представляет собой интерфейс PDFTK, где вы можете объединять, разделять или даже добавлять фон в свои файлы PDF.

37
ответ дан 8 October 2014 в 05:04

Я использую pdfseparate для извлечения определенных страниц из большого файла pdf:

pdfseparate -f  156 -l 157 input.pdf  output_%d.pdf 
pdfseparate -f  1   -l 2   input.pdf  output_%d.pdf 

, а затем присоединяю их все с помощью команды:

pdfunite $(ls -v output_*.pdf | tr '\n' ' ') out$(date  +%Y-%m-%d_%H_%M_%S ).pdf

Это объединяет:

output_1.pdf output_2.pdf output_156.pdf output_157.pdf  

в:

out2014-12-14_23_25_36.pdf

Может быть, есть более простой способ справиться ...: -)

Инструкции по установке:

sudo apt install poppler-utils
7
ответ дан 8 October 2014 в 05:04

Вы также можете использовать jPDFTweak , pdfsam или pdfjam .

(Тем не менее, я использую pdftk.)

5
ответ дан 8 October 2014 в 05:04

Используйте pdfsam http://www.pdfsam.org / это очень хорошо для разделения и объединения PDF-файлов

sudo apt install pdfsam
9
ответ дан 8 October 2014 в 05:04

Альтернативный подход - использовать Латекс, как описано в этом посте ( без корневого доступа при условии, что у вас установлен pdflatex ): https://tex.stackexchange.com/questions/8662/merge-two-pdf-files-output-by-latex

Это полезно, если у вас нет упомянутых инструментов или привилегий root, но у вас есть pdflatex.

Я копирую текстовый код ниже, чтобы объединить file1.pdf и file2.pdf . Создайте файл с именем output.tex и поместите:

\documentclass{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages=-]{file1}
\includepdf[pages=-]{file2}
\end{document}

И для компиляции просто используйте: pdflatex output.tex

Объединенный файл будет называться output.pdf .

16
ответ дан 8 October 2014 в 05:04

Вы можете использовать pdftk для объединения и модификации PDF документов в целом. В качестве альтернативы существует онлайн-сервис для этого: http://www.pdfmerge.com/

5
ответ дан 8 October 2014 в 05:04

Вот мой подход:

  • Я хотел, чтобы он был легко доступен, поэтому я создал право- нажмите ярлык в Nautilus (см. https://help.ubuntu.com/community/NautilusScriptsHowto )
  • Я хотел, чтобы это было очень быстро, поэтому я использовал pdfunite
  • pdfunite принимает только пути к файлам в в середине команды, поэтому мне пришлось почесать голову, чтобы управлять пробелами в путях к файлам. Поэтому я предположил, что все пути к файлам будут начинаться с «/ home /» и заканчиваться на «.pdf»

Вот результат:

#!/bin/sh
CLEANED_FILE_PATHS=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed 's,.pdf /home/,.pdf\\n/home/,g')
echo $CLEANED_FILE_PATHS | bash -c 'IFS=$'"'"'\n'"'"' read -d "" -ra x;pdfunite "${x[@]}" merged.pdf'

Просто вставьте этот скрипт в

/home/your_username/.local/ share / nautilus / scripts

и назовите его "merge_pdfs.sh" (например). Затем сделайте его исполняемым (щелкните правой кнопкой мыши merge_pdfs.sh -> вкладка «Разрешения» -> установите флажок «Разрешить выполнение файла как программы»

Итак, теперь, чтобы объединить файлы PDF, вам просто нужно их выбрать -> щелкнуть правой кнопкой мыши -> сценарии -> merge_pdfs.sh, и он создаст файл "merged.pdf" в том же каталоге

Надеюсь, это поможет!

1
ответ дан 8 October 2014 в 05:04

Попробуйте PDFMod, он из проекта GNOME:

https://wiki.gnome.org/Apps/PdfMod

sudo apt install pdfmod
13
ответ дан 8 October 2014 в 05:04

Вы можете использовать бесплатные инструменты pdftools с открытым исходным кодом (отказ от ответственности: я являюсь автором из него).

По сути, это интерфейс Python для пакета Latex pdfpages .

Чтобы объединить файлы PDF один за другим, вы можете запустить:

pdftools --input-file file1.pdf --input-file file2.pdf --output output.pdf

Чтобы объединить все файлы PDF в каталоге вы можете запустить:

pdftools --input-dir ./dir_with_pdfs --output output.pdf
1
ответ дан 5 January 2021 в 23:59

Другие вопросы по тегам:

Похожие вопросы: