Как уменьшить размер PDF и сохранить закладки?


19

У меня есть ~ 259 МБ PDF. Я сделал pdf2psи ps2pdf. Окончательный размер был 45 МБ. Я не вижу видимой разницы в качестве ни у одного читателя. Хотя закладки были потеряны. Я пытался использовать pdftk, но это не сохранило закладки.

pdftk ... update_info

Что вызвало огромное уменьшение в размерах? Есть ли альтернатива, чтобы сохранить закладки и при этом иметь уменьшенный размер (предпочтительно альтернативы командной строки linux)?


В продолжение ответа @ Dan: различные кодировки (и сжатие) могут объяснить разницу. В качестве простого теста посмотрите на размер любого файла после сжатия с помощью gzip. Разница в размерах все еще впечатляет?
Хенк Лангевелд

Ответы:


17

Вы можете попробовать ghostscript с выводом книги, и закладки, похоже, сохраняются:

gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dPDFSETTINGS=/ebook -sOutputFile=newFile.pdf originalFile.pdf

2
спасибо, это сработало. Я использовал PDFSETTINGS=/screen. С этой опцией pdf стал 15 МБ :) Ссылка: GS Tips
Вишну Кумар

Забыл упомянуть, закладки действительно сохранились. Но все же кто-нибудь знает, что становится меньше?
Вишну Кумар

2

@ Вишну Кумар

Я рад, что ты спросил. Ваш вопрос побудил меня пересмотреть эту проблему, и я обнаружил, что извлек 100 страниц из PDF-файла на 1000 страниц и более, используя Acrobat Pro, в качестве контрольного примера, однако в него не входили закладки TOC, как я предполагал, и что была проблема. Поэтому я открыл исходный большой PDF-файл в Acrobat Pro и удалил все, кроме первых 100 страниц, и удалил все, кроме соответствующих закладок, и сохранил их в качестве контрольного примера. Сейчас оглавление сохраняется.

Вот мое сравнение двух настроек:

/ebook selects medium-resolution output similar to the Acrobat Distiller "eBook" setting.

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -dNOPAUSE -dBATCH -sOutputFile=reduced/output_1-102_TOC_[gs-ebook].pdf input_1-102_TOC.pdf

смехотворно медленный,
91,7 МБ -> 33,4 МБ (36% от оригинала),
сохраненное содержание TOC,
плохое качество - пиксельное

/printer selects output similar to the Acrobat Distiller "Print Optimized" setting.

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/printer -dNOPAUSE -dBATCH -sOutputFile=reduced/output_1-102_TOC_[gs-printer].pdf input_1-102_TOC.pdf

fast
91.7MB -> 68.9MB (75% от оригинала)
TOC сохранил
качество, практически идентичное

Другие настройки:

/default selects output intended to be useful across a wide variety of uses, possibly at the expense of a larger output file.

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/default -dNOPAUSE -dBATCH -sOutputFile=reduced/output_1-102_TOC_[gs-default].pdf input_1-102_TOC.pdf

быстрая
91.7MB -> 60.8MB (66% от оригинала)
TOC сохранил
качество почти идентично

/prepress selects output similar to Acrobat Distiller "Prepress Optimized" setting.

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/prepress -dNOPAUSE -dBATCH -sOutputFile=reduced/output_1-102_TOC_[gs-prepress].pdf input_1-102_TOC.pdf

быстрый
91.7MB -> 80.2MB (87% от оригинала)
TOC сохранил
качество почти идентично

Как видно, /defaultнастройки выполняются лучше всего, давая наименьший размер для лучшего качества.


0

Проигнорируйте это и увидите обновление в результате Vishnu Kumarкомментариев.

Это не сработало для меня. Да, он уменьшил размер вдвое, но с недопустимыми пиксельными шрифтами и отсутствием оглавления закладок, как с любой другой настройкой вывода, с которой я пробовал gs, то есть screenи printer. Спасибо, в любом случае…


Ты пробовал /ebook??
Вишну Кумар
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.