Невозможно вставить шрифт с помощью libHaru в Windows
У меня есть следующий код, который отлично работает на Linux:
auto pdf_doc = HPDF_New(nullptr, nullptr);
if (!pdf_doc) { /* error handling */ }
HPDF_SetCompressionMode(pdf_doc, HPDF_COMP_ALL);
HPDF_UseUTFEncodings(pdf_doc);
HPDF_SetCurrentEncoder(pdf_doc, "UTF-8");
const char* font_bold_name = HPDF_LoadTTFontFromFile(pdf_doc, "HelveticaBd.ttf", HPDF_TRUE);
auto font_bold = HPDF_GetFont(pdf_doc, font_bold_name, "UTF-8");
const char* font_regular_name = HPDF_LoadTTFontFromFile(pdf_doc, "Helvetica.ttf", HPDF_TRUE);
auto font_regular = HPDF_GetFont(pdf_doc, font_regular_name, "UTF-8");
Но в Windows звоните HPDF_LoadTTFontFromFile()
возвращается ""
и ошибка 105D установлена в pdf_doc
, Эта ошибка в соответствии с документацией означает "шрифт не может быть встроен. (Ограничение лицензии)".
Но те же файлы шрифтов TTF работают на Linux. Я также попробовал шрифт, представленный в демоверсии, но в этом случае он устанавливает ошибку 0x1017 в pdf_doc
что означает "Невозможно открыть файл. (Подробный код установлен.)"
Также вызов успешно, когда я прохожу HPDF_FALSE
(что означает "не вставлять шрифт"), и это работает. Но мне нужно встроить шрифт:(
Кто-нибудь сталкивался с подобной проблемой?
Я что-то пропустил?
Почему лицензия будет проблемой для Windows, если Linux это позволяет?
Связано ли это с настройками / настройками шрифтов в Windows?
Редактировать:
Произошла ошибка для шрифта Helvetica-bold. Обычная версия Helvetica не вызывает никаких ошибок, но не внедряется.
Это как-то связано со шрифтами Base-14?