Сжать аннотации PDF

Вопрос или проблема

Существует похожий вопрос, но ответы не решают проблему «сплющивания» аннотаций, то есть превращения их из аннотаций в фактическое содержимое.

Один из способов — напечатать их в PDF, но это может привести к потере качества, особенно отсканированных изображений в PDF. Есть ли способ достичь этого, желательно с использованием инструмента командной строки Linux, такого как pdftk, который может сохранить все в PDF как есть и только добавляет аннотации как содержимое?

Принятый ответ на тот же вопрос, Как я могу полностью сплюснуть PDF в Mac OS с помощью командной строки? кажется, работает для меня, чтобы «запечь» или «сплющить» аннотации PDF как содержимое PDF:

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/default -dNOPAUSE -dQUIET -dBATCH -sOutputFile=out.pdf input_with_annots.pdf

… и, похоже, он даже сохраняет текст аннотации (так что его можно копировать и вставлять, вместе с оригинальным текстовым содержимым).

Тестировалось на Ubuntu 14.04, Ghostscript gs --version 9.10.

Лучшее решение, которое я нашел до сих пор: откройте PDF файл в Evince и “Напечатать в файл”.

Скриншот диалога печати Evince, с выбранным “Напечатать в файл”

Вот ответ @sdaau, обновленный для Ubuntu 24.04 gs --version 10.02.1:

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/default -dPreserveAnnots=false -dNOPAUSE -dQUIET -dBATCH -sOutputFile=out.pdf input_with_annots.pdf

Согласно руководству Ghostscript:

-dPreserveAnnots=boolean

Теперь мы пытаемся сохранить большинство аннотаций из входных PDF файлов как аннотации в выходном PDF файле

Лично я предпочитаю также сохранять ссылки:

gs -dQUIET -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=out.pdf -c "/PreserveAnnotTypes [/Link] def" -f input_with_annots.pdf

Ответ или решение

Чтобы успешно сгладить аннотации в PDF-документах и преобразовать их в фактическое содержимое, можно воспользоваться несколькими решениями, особенно на платформе Linux. Проблема заключается в необходимости сохранить качество PDF, включая текст и изображения, при этом "встраивая" аннотации в основное содержимое документа. Мы рассмотрим несколько подходов, включая инструмент командной строки Ghostscript, а также графический интерфейс Evince.

1. Использование Ghostscript

Ghostscript является мощным инструментом для обработки PDF-документов. Для сглаживания аннотаций можно использовать следующую команду:

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/default -dPreserveAnnots=false -dNOPAUSE -dQUIET -dBATCH -sOutputFile=out.pdf input_with_annots.pdf

Параметры команды:

  • -sDEVICE=pdfwrite: указывает, что выходной файл будет в формате PDF.
  • -dPDFSETTINGS=/default: выбирает стандартные настройки для обработки.
  • -dPreserveAnnots=false: отключает сохранение аннотаций в выходном документе, что приводит к их встраиванию.
  • -dNOPAUSE, -dQUIET, -dBATCH: управляют поведением Ghostscript для автоматизации процесса.

Дополнительное преимущество заключается в возможности сохранить ссылки в документе с использованием этой команды:

gs -dQUIET -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=out.pdf -c "/PreserveAnnotTypes [/Link] def" -f input_with_annots.pdf

Это позволит сохранить интерактивные элементы, такие как гиперссылки, при сглаживании PDF.

2. Приложение Evince

Если вы предпочитаете графический интерфейс, Evince предлагает удобный способ для "печати" PDF-документа в новый файл, где аннотации будут сглажены в основное содержимое. Просто откройте PDF в Evince и выберите опцию "Печать в файл". Это приведет к созданию нового PDF-документа без дополнительных аннотаций.

Заключение

Каждый из перечисленных методов имеет свои преимущества. Ghostscript предоставляет возможность автоматизации и более детального контроля над процессом, а Evince – простой и интуитивный графический способ обработки. Выбор подходящего решения будет зависеть от ваших предпочтений в работе с интерфейсом и необходимого уровня детализации.

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

Оцените материал
Добавить комментарий

Капча загружается...