У меня есть входной файл PDF (обычно, но не всегда сгенерированный pdfTeX), который я хочу преобразовать в выходной PDF, который визуально эквивалентен (независимо от разрешения), он имеет те же метаданные (информация в формате Unicode, гиперссылки, контуры и т. д.), но размер файла как можно меньше.Как оптимизировать размер файла PDF?
Я знаю о следующих методах:
java -cp Multivalent.jar tool.pdf.Compress input.pdf
(от http://multivalent.sourceforge.net/). Это рекомпрессирует все потоки, удаляет неиспользуемые объекты, объединяет эквивалентные объекты, сжимает пробелы, удаляет значения по умолчанию, сжимает таблицу перекрестных ссылок.- Сжатие соответствующих изображений с помощью jbig2 и PNGOUT.
- Re-encoding Type1 шрифты как шрифты CFF.
- Объединение эквивалентных изображений.
- Объединение подмножеств одного шрифта в большее подмножество.
- Удалить заполненные формы.
- При дистилляции или другой конвертации (например,
gs -sDEVICE=pdfwrite
) убедитесь, что он не ухудшает качество изображения и не увеличивает (!) Размеры изображения.
Я знаю о следующих методах, но они не применяются в моем случае, так как у меня уже есть PDF:
- Используйте меньше и/или меньше шрифтов.
- Используйте векторные изображения вместо растровых изображений.
Есть ли у вас какие-либо другие идеи по оптимизации PDF?
В настоящее время многозначный: http://downloads.sourceforge.net/project/multivalent/multivalent/Release20091027/Multivalent20091027.jar теперь отсутствует класс tool.pdf.Compress. Это описано здесь: http://sourceforge.net/p/multivalent/discussion/252478/thread/e7850c31/?limit=50#a96d. Знаете ли вы о каких-либо хороших инструментах замены? –
Предыдущие версии Многолистные существуют в Arch Linux: https://aur.archlinux.org/packages/multivalent-pdf-tools/ –