Я нашел много связанных вопросов на этом форуме. Но никто не решает мою проблему. Пожалуйста, проверьте еще раз, прежде чем пометить его как дубликат.
Предположим, у меня есть два файла PDF.
first.pdf
с 10 страницами.
second.pdf
с 20 страницами.
Я хочу создать новый файл PDF, где мне нужны страницы - 2,5,6,9 из first.pdf
и страницы 6,7,15,19 из second.pdf
.
Как это сделать из командной строки?
Вы можете использовать команду 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
:
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
всего за ОДИН шаг:
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
больше не доступен в репозиториях, вы можете использовать mutool
из mupdf-tools
с такой командой, как:
mutool merge -o output.pdf first.pdf 2,5,6,9 second.pdf 6,7,15,19