Работа с документами
Как извлечь и объединить страницы PDF, не перепутав номера
qpdf умеет копировать выбранные страницы в новый PDF на вашем компьютере. Диапазоны считают страницы от начала файла, с 1. Если перед напечатанной страницей 1 стоят обложка и оглавление, диапазон 1-2 скопирует именно их. Сначала сопоставьте номера с позициями в файле.

Что нужно собрать
Нужны напечатанные страницы 1, 2 и 4 из отчёта, затем страница приложения A-2. В нашем вымышленном отчёте из шести страниц позициям 1–6 соответствуют метки i, ii, 1, 2, 3, 4. В приложении три страницы: A-1, A-2, A-3. Значит, нужны позиции 3, 4, 6 отчёта и позиция 2 приложения.
Подготовьте рабочую папку
Установите qpdf по официальной инструкции загрузки. Откройте терминал в папке с копиями report.pdf и appendix.pdf. Сохраните оригиналы. Выберите ещё не занятые имена результатов: qpdf может перезаписать существующий выходной файл. Команды обрабатывают локальные файлы и не требуют загрузки документов на сайт.
Пример подходит для обычных PDF, когда требуется содержимое выбранных страниц. Для документов с цифровой подписью, интерактивных форм или обязательным сохранением тегов доступности нужен процесс, который явно поддерживает эти возможности. Такие случаи мы не проверяли.
Соберите документ из четырёх страниц
bash
qpdf --empty --pages "report.pdf" 3-4,6 "appendix.pdf" 2 -- "packet.pdf"3-4 включает обе позиции, а запятая добавляет позицию 6. Каждый диапазон относится к имени файла непосредственно перед ним. Отдельный -- завершает выбор страниц; packet.pdf — выходной файл.
Проверьте нумерацию перед изменением команды
Позиция — место страницы в файле при счёте с 1. Напечатанный номер — видимая часть содержимого. Метка страницы PDF — отдельные метаданные, которые некоторые просмотрщики показывают в навигации. Эти значения могут различаться. В нашем образце напечатанные номера совпадают с метками PDF, но отличаются от позиций.
Отсчитайте страницы от начала по миниатюрам или абсолютному счётчику просмотрщика. На каждой выбранной позиции проверьте видимый заголовок. Не считайте номер, введённый в просмотрщике, заведомо абсолютной позицией: некоторые программы принимают метки страниц.
Результат команды: Scope (напечатано 1), Checklist (2), Decision (4), Required attachment (A-2). Начальные страницы отчёта, Draft note (3) и остальные страницы приложения в него не попадают. Для своих файлов сначала составьте собственное соответствие номеров и позиций.
Извлеките только две соседние страницы отчёта
bash
qpdf --empty --pages "report.pdf" 3-4 -- "excerpt.pdf"Получится один PDF из двух страниц на позициях 3 и 4. Команда не создаёт отдельный файл для каждой страницы.
Зачем в начале --empty
--empty начинает с пустого основного документа и добавляет выбранные страницы. Первый исходный файл при этом не становится образцом структуры всего документа. В нашем тесте метки скопированных страниц сохранились, а закладки и название документа — нет.
Документация qpdf указывает ограничения при переносе общих свойств документа во время выбора страниц. Не рассчитывайте на автоматическое перестроение закладок, форм или тегов под новую подборку. --empty не предназначен для гарантированного удаления конфиденциального содержимого; эта проверка не устанавливает, что файл можно безопасно передавать другим людям.
Проверьте сохранённый результат
bash
qpdf --show-npages "packet.pdf"
qpdf --check "packet.pdf"Для этого примера первая команда должна вывести 4. Вторая проверяет структуру PDF. Успешная --check не подтверждает, что выбрано нужное содержимое.
Откройте результат и сравните с исходниками
- Убедитесь, что страниц четыре и порядок правильный. На каждой проверьте характерный заголовок, особенно на границе отчёта и приложения.
- Сравните поворот, края страниц, мелкий текст и важные числа с оригиналами. Если нужен поиск по тексту, скопируйте строку.
- В этом примере ожидаются метки 1, 2, 4, A-2. Пропуски намеренные: копирование страниц не меняет номера, напечатанные на них.
- Если qpdf сообщает о предупреждениях или ошибках, прочитайте их перед использованием файла. Если команда недоступна, проверьте установку и выполните qpdf --version: изменение диапазона не исправит отсутствие программы.
Что мы проверили на практике
21 октября 2026 года Coru создала два PDF с метками страниц и выполнила команды qpdf 11.9.0 на Ubuntu 24.04 с отключённой после подготовки сетью. В packet.pdf оказалось четыре страницы с метками 1, 2, 4, A-2, в excerpt.pdf — две с метками 1, 2. Выбор позиций 1-2 вместо них дал i и ii.
У каждой выбранной страницы совпали извлечённый текст, размеры и пиксели изображения при отрисовке в 150 dpi. Хеши исходных файлов не изменились. Это результаты для наших простых авторских образцов, а не гарантия сохранения свойств любого PDF и не проверка интерфейса Windows или Mac.