Aspose PDF for C++ Linux环境下pdf转word抛出异常

你好,我在linux环境下编译运行示例代码,打开pdf文件再保存为docx文件时,代码Save行抛出异常,改怎么解决呢?
示例代码如下:
auto asposeLicense = MakeObjectAspose::Pdf::License();
asposeLicense->SetLicense(u"aspose.lic");
Console::WriteLine(u"SetLicense finished.");

auto doc = MakeObject<Document>(u"helloworld.pdf");
doc->Save(u"helloworld.docx", SaveFormat::DocX);

其中helloword.pdf文件是如下代码生成的:
auto doc = MakeObject();
auto pages = doc->get_Pages();
pages->Add();
//Numeration of Pages starts from 1
auto page = pages->idx_get(1);
auto paragraps = page->get_Paragraphs();
paragraps->Add(MakeObject(u"Hello World!"));
auto text = MakeObject(u"This example is created by Aspose.Pdf for C++.");
auto ts = text->get_TextState();
ts->set_FontSize(16);
ts->set_FontStyle(FontStyles::Italic);
paragraps->Add(text);
doc->Save(u"helloworld.pdf");

@Shen1

您能否分享您使用上述代码生成的示例 PDF 文档?另外,请分享错误详细信息和堆栈跟踪信息以及 Linux 的版本信息。我们将进一步为您提供相应的帮助。

1、pdf文件helloworld.pdf (2.0 KB)
2、出错信息截图如下:
linux_error.jpg (45.6 KB)
3、linux版本信息
linux_version.jpg (26.4 KB)
4、gcc 版本为
gcc_version.jpg (32.3 KB)
5、clang版本为
clang_version.jpg (17.8 KB)
6、cmake版本为
cmake_version.jpg (19.3 KB)
7、arial.ttf字体已经安装了,同时libfontconfig fontconfig和fontconfig也安装了。
8、是否可以提供linux下C++的示例代码?

@Shen1

您能否尝试安装这样的字体:

sudo apt install ttf-mscorefonts-installer
sudo fc-cache -f -v

Aspose.PDF for C++ library 在下一个文件夹中找到字体:

"/usr/share/fonts",
"/usr/share/fonts/truetype/msttcorefonts",
"/usr/share/fonts/msttcore",                      
"/usr/local/share/fonts",

谢谢,我安装字体后,软件工作正常了。

1 Like