Почему такая большая разница в размерах практически одинаковых документов - PullRequest
0 голосов
/ 15 декабря 2011

Имеет два файла PDF, первый из которых создан с помощью libharu, а второй - с помощью PDF :: API2. Если не упомянуть о координатах, то содержание то же самое. Но первый PDF больше, второй в четыре раза. Единственное различие, которое я обнаружил, это тип встраивания шрифтов, показанный на вкладке шрифты свойств документа.

Во первых

Verdana (Embedded Subset) 
  Type: TrueType 
  Encoding: Custom

В секунду

Verdana 
  Type: TrueType
  Encoding: Custom
  Actual Font: Verdana
  Actual font Type: TrueType

Как бороться с этим встроенным подмножеством?

Ответы [ 2 ]

1 голос
/ 02 сентября 2013

это старый вопрос, но у меня была похожая проблема.

Вы установили libharu для сжатия вашего pdf?

в C ++ из документации

HPDF_SetCompressionMode (pdf, HPDF_COMP_ALL);
1 голос
/ 15 декабря 2011

На размер PDF влияет множество факторов.Ваша проблема может заключаться в том, как библиотеки создания PDF обрабатывают встраивание шрифтов, а именно:

  • «Внедренное подмножество» означает, что часть метрик шрифта, например ширина глифа, включенав файле.
  • Если шрифт не внедрен, предположительно он загружается программой чтения из системы, уменьшая размер файла.

Если PDF уже небольшой (содержит только одну страницу, мало текста и не содержит изображений), встраивание шрифтов может существенно изменить размер документа.Тем не менее, в абсолютном выражении, встроенный шрифт не должен занимать много места.

Еще один фактор, который вы должны проверить, - это сжатие.PDF - это в основном простой текстовый поток, но обычно он поставляется в сжатом виде.Попробуйте открыть оба файла PDF в текстовом редакторе и посмотреть, читаемы ли они или нет.Раздраженная (сжатая) форма, естественно, займет меньше места.

Наконец, вы можете проверить объекты, из которых состоит файл PDF, используя множество инспекторов PDF, например, этот (Я просто погуглил, никаких гарантий, что все будет работать как положено).

...