Создать PDF с определенными диапазонами страниц из нескольких файлов PDF?

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

Предположим, у меня есть два файла PDF.

  1. first.pdf имея 10 страниц.

  2. second.pdf имея 20 страниц.

Я хочу создать новый файл PDF, где мне нужны страницы - 2,5,6,9 от first.pdf и страницы 6,7,15,19 из second.pdf,

Как это сделать из командной строки?

3 ответа

Ты можешь использовать pdfseparate Команда разделить все страницы PDF в одну страницу PDF. Следующая команда создаст last_page-first_page PDF, где их имя будет out_<pageNumber>:

pdfseparate -f <first_page> -l <last_page> <file_name>.pdf out_%d.pdf

Примените процесс к обоим PDF-файлам, используя разные выходные имена для каждого входного PDF-файла, чтобы не перезаписывать ранее созданные одностраничные PDF-файлы. Тогда вы можете использовать pdfunite для объединения выбранных страниц в один pdf:

pdfunite <ordered list of pdf> <output_filename>.pdf

Вы можете использовать pdftk

всего за один шаг:

pdftk A=first.pdf B=second.pdf cat A2 A5 A6 A9 B6 B7 B15 B19 output final.pdf

PS. Если вам нужно установить, вы должны:

sudo apt-get install pdftk

Устанавливать pdftk:

sudo apt install pdftk

затем, чтобы извлечь "2 5 6 9" из первого файла "1.pdf":

pdftk first.pdf cat 2 5 6 9 output 1.pdf

и для второго.pdf:

pdftk second.pdf cat  6 7 15 19 output 2.pdf

Затем объедините их:

pdftk 1.pdf 2.pdf output final.pdf

И удалите ненужные:

rm 1.pdf 2.pdf

В качестве pdftk больше не доступен в репозиториях, которые вы могли бы использовать mutool из mupdf-tools командой вроде:

mutool merge -o output.pdf first.pdf 2,5,6,9 second.pdf 6,7,15,19
Другие вопросы по тегам