我试图在包含日语用户名的路径中保存一个 pdf。在这种情况下,HPDF_SaveToFile 正在使我的应用程序在 Windows 上崩溃。任何编译选项或其他东西?有什么想法可以用 libhaur 支持 Unicode 文件名吗?我不想用日文编码创建 pdf,我想用日文文件名写 pdf。
问问题
310 次
1 回答
0
Qt 中的一个解决方案。如果你使用 C++,你可以使用 fstream/ofstream(::write)。如果你使用 C,你可以使用 fwrite。
QFile file(path);
if (file.open(QIODevice::WriteOnly))
{
HPDF_SaveToStream(m_pdf);
/* get the data from the stream and write it to file. */
for (;;)
{
HPDF_BYTE buf[4096];
HPDF_UINT32 siz = 4096;
HPDF_STATUS ret = HPDF_ReadFromStream(m_pdf, buf, &siz);
if (siz == 0)
{
break;
}
if (-1 == file.write(reinterpret_cast<const char *>(buf), siz))
{
qDebug() << "Write PDF error";
break;
}
}
}
HPDF_Free(m_pdf);
参考:Libharu 使用示例
于 2016-09-22T08:16:16.847 回答