#pdf #pdf-generation #zlib #libharu
#PDF #pdf-генерация #zlib #libharu
Вопрос:
Я создаю файлы Pdf с использованием библиотек LibHaru. Мой код выглядит следующим образом
#include <iostream>
#include "hpdf.h"
using namespace std;
void error_handler(HPDF_STATUS error_no, HPDF_STATUS detail_no, void *user_data)
{
}
int main()
{
cout<<"Compression"<<endl;
HPDF_Doc pdf = HPDF_New(error_handler, NULL);
if (!pdf)
return 0;
HPDF_STATUS Status = HPDF_SetCompressionMode(pdf, HPDF_COMP_ALL);
return 0;
}
ПРОБЛЕМА: я отладил код и обнаружил, что он HPDF_SetCompressionMode()
возвращает 4129, что является кодом ошибки для недопустимого значения, установленного при вызове hpdf_setcompressionmode() . .
Ответ №1:
Если вы перейдете к коду, вы увидите, что получаете ошибку, потому что библиотека сжатия ZLIB не была скомпилирована в вашу копию HaruPDF.
Сначала: закомментируйте эту строку в ..win32includehpdf_config.h:
/* zlib is not available */
//#define LIBHPDF_HAVE_NOZLIB
Второе: найдите, загрузите и разархивируйте код ZLIB. Вы можете получить исходный код со следующего веб-сайта:
Третье: сообщите HaruPDF, где он может найти код ZLIB, и перекомпилируйте HaruPDF.
Теперь вы должны иметь возможность использовать сжатие.
Разве Open Source не великолепен?