使用 libharu 库在 pdf 中编码

Encoding in pdf with libharu library

我正在尝试借助 libharu library 2.3 版创建 pdf 文档。
除了编码,一切都很好。我需要插入中欧语言(捷克语)。源代码保存为utf-8并在Linux gcc.
下编译 在函数 HPDF_GetFont() 中,我已经尝试了所有 single byte encodings 以及所有内置字体和文件中支持 utf-8 的字体。但这不是成功之道。

我应该在下面的代码中更改什么? 我应该将文本 "abcdÁéěňóšťíď" 保存到 wchar_t* 然后以某种方式将其转换为单字节吗?
谢谢指教。

void write_to_pdf(char *file_name)
{
    HPDF_Doc pdf;
    HPDF_Page page;
    HPDF_Font font;

    pdf = HPDF_New (NULL, NULL);
    if (!pdf) 
    {
        printf ("ERROR: cannot create pdf object.\n");
        return false;
    }

    HPDF_UseUTFEncodings(pdf);

    font = HPDF_GetFont(pdf, HPDF_LoadTTFontFromFile(pdf, "arial.ttf", HPDF_TRUE), "StandardEncoding");
    page = HPDF_AddPage(pdf);
    HPDF_Page_SetSize (page, HPDF_PAGE_SIZE_A4, HPDF_PAGE_PORTRAIT);
    HPDF_Page_SetTextRenderingMode(page, HPDF_FILL);
    HPDF_Page_SetRGBFill(page, 0.0, 0.0, 0.0);

    HPDF_Page_SetFontAndSize(page, font, 11);
    HPDF_Page_BeginText(page);
    HPDF_Page_TextOut(page, 10, 20, "abcdÁéěňóšťíď");
    HPDF_Page_EndText(page);

    HPDF_SaveToFile (pdf, file_name);
    HPDF_Free (pdf);
}

pdf 文件中的字符“Áéěňóšťíď”打印不正确。

我通过添加解决了问题:
HPDF_SetCurrentEncoder(pdf, "UTF-8")
和 UTF-8 到 fnc:
HPDF_GetFont(pdf, HPDF_LoadTTFontFromFile(pdf, "arial.ttf", HPDF_TRUE), "UTF-8")

我没有在文档中找到这个,但是 。也许文档不是最新的。