Явно установить фильтр сжатия изображения

Согласно спецификации формата PDF, он имеет различные фильтры сжатия изображений, в том числе CCITTFaxDecode.

я использую libharu и необходимо явно установить фильтр сжатия на CCITTFaxDecode для всех изображений в сгенерированном PDF.

Как я могу сказать libHaru использовать сжатие CCITT для изображений в PDF?

Ниже то, где я сейчас нахожусь.

От libHaru документация, она имеет HPDF_SetCompressionMode() функция с аргументом mode, Аргумент имеет HPDF_COMP_IMAGE опция включения сжатия изображений. Но не ясно, как выбрать, какой компрессор использовать.

Другое дело, среди libHaru Исходники есть компрессор CCITT (hpdf_image_ccitt.c), но я не могу понять, как явно установить его в качестве компрессора для изображений.

Любая помощь с благодарностью.

1 ответ

Решение

Мое чтение источника в hpdf_image_ccitt.c состоит в том, что кодер CCITT G4 выбирается автоматически для приемлемых случаев, если HPDF_COMP_IMAGE включен. См. https://github.com/libharu/libharu/blob/d84867ebf9f3de6afd661d2cdaff102457fbc371/src/hpdf_image_ccitt.c#L779 где это выглядит так.

Обратите внимание, что только черно-белые (1 бит на пиксель) изображения могут быть закодированы CCITT.

Другие вопросы по тегам