日本語のユーザー名を含むパスに 1 つの PDF を保存しようとしています。この場合、HPDF_SaveToFile が Windows でアプリをクラッシュさせています。コンパイルするオプションなどはありますか? libhaur で Unicode ファイル名をサポートするアイデアはありますか? 日本語エンコードでPDFを作成したくありません。日本語のファイル名でPDFを書きたいです。
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 に答える