We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

Aspose PDF for C++转doc文件速度慢

我使用Aspose.PDF.Cpp.21.5\example目录中HelloWorld工程,转换大pdf文件到word(74页,10M左右)转换的很慢差不多需要20分钟,有没有办法提升转换速度?

Sample_1_out.pdf (4.7 MB)
Sample_2_out.pdf (4.4 MB)
Sample_3_out.pdf (1.9 MB)
附件Sample_1_out.pdf、Sample_2_out.pdf、Sample_3_out.pdf是转换前的原pdf文件,网站限制了附件大小,我拆分成了三个文件,你可以合并这三个文件,然后验证。
转换代码如下:
void ConvertingSimpleExamples()
{
SharedPtr doc;
std::wstring strDir = GetMyDirectoryW();

std::wstring strFilePath = strDir + L"\\Example1.pdf";
System::String docPath(strFilePath.c_str(), strFilePath.size());
doc = MakeObject<Document>(docPath);

std::wstring strSaveDocFilePath = strDir + L"\\Example1.docx";
System::String docSaveDocPath(strSaveDocFilePath.c_str(), strSaveDocFilePath.size());

auto saveOptions = MakeObject<DocSaveOptions>();
saveOptions->set_Format(DocSaveOptions::DocFormat::DocX);
saveOptions->set_Mode(DocSaveOptions::RecognitionMode::Textbox);
saveOptions->CustomProgressHandler = ProgressHandler2(ConversionProgressCallback2);

doc->Save(docSaveDocPath, saveOptions);

}

@Shen1

请注意,API 的性能是在应用程序的发布模式下衡量的。同时,我们正在测试这个案例,请您在发布模式下执行您的应用程序并与我们分享您花费了多少时间?

@asad.ali
你好,我用release模式重新测试了,大概花费了438秒(PC是win10,64位,16G内存环境),还是慢,
※附件Example1.7z是测试的另一个pdf文件,转换目标为docx文件,目前已经花费了20分钟(附件image.png是转换进度计时截图),
但是进度看起来还不到1/4,您也测试一下这个案例:
Example1.7z (4.8 MB)
image.png (3.6 KB)

※转换进度里的ProgressEventType::TotalProgress类型数据,eventInfo->Value和eventInfo->MaxValue并没有反应出真实的进度,特别是转换完成时Value和MaxValue值并不相等,是不是哪里有问题?

@Shen1

感谢您分享更多详细信息。

我们已在我们的问题跟踪系统中以工单 ID PDFCPP-1638 记录了您的完整案例。我们一定会调查它以提高 API 性能,并在故障单解决后立即通知您。请耐心等待,给我们一些时间。

我们对造成的不便很抱歉。