Вопрос или проблема
Существует похожий вопрос, но ответы не решают проблему «сплющивания» аннотаций, то есть превращения их из аннотаций в фактическое содержимое.
Один из способов — напечатать их в 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 и “Напечатать в файл”.
Вот ответ @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-файлах, сохраняя при этом высокое качество исходного контента.