1

我需要找到一种在转换为 DOCX 文件期间忽略 PDF 文档中的图片和照片的方法。

我正在创建 FineReader Engine 的一个实例:

IEngine engine = Engine.InitializeEngine(
engineConfig.getDllFolder(), engineConfig.getCustomerProjectId(),
engineConfig.getLicensePath(), engineConfig.getLicensePassword(), "", "", false);

之后,我正在转换一个文档:

IFRDocument document = engine.CreateFRDocument();
document.AddImageFile(file.getAbsolutePath(), null, null);
document.Process(null);
String exportPath = FileUtil.prepareExportPath(file, resultFolder);
document.Export(exportPath, FileExportFormatEnum.FEF_DOCX, null);

结果,它转换了初始 pdf 文档中的所有图像。

4

3 回答 3

2

当您将 pdf 导出到 docx 时,您应该使用一些导出参数。这样您就可以使用 IRTFExportParams。你可以得到这个对象:

IRTFExportParams irtfExportParams = engine.CreateRTFExportParams();

在那里你可以像这样设置 writePicture 属性:

irtfExportParams.setWritePictures(false);

那里:IEngine engine是主界面。我想你知道如何初始化它;)))

您还必须在方法 document.Process() 属性中进行设置。(文件来自IFRDocument document)。在Process()方法中你必须给予IDocumentProcessingParams iDocumentProcessingParams。这个对象有方法setPageProcessingParams(),你必须把IPageProcessingParams iPageProcessingParams参数放在那里(你可以通过 得到这个对象engine.CreatePageProcessingParams())。这个对象有方法:

iPageProcessingParams.setPerformAnalysis(true);
iPageProcessingParams.setPageAnalysisParams(iPageAnalysisParams);

在第一个方法中设置为 true,在第二个方法中我们给出iPageAnalysisParams( IPageAnalysisParams iPageAnalysisParams = engine.CreatePageAnalysisParams())。

最后一步,您必须像这样在setDetectPictures(false)方法中设置错误值。iPageAnalysisParams就这样:)

当你要导出文件时,你应该像这样放置这个参数:

IFRDocument document = engine.CreateFRDocument();
document.Export(filePath, FileExportFormatEnum.FEF_DOCX, irtfExportParams);

希望我的回答对大家有帮助)))

于 2019-10-30T08:56:42.423 回答
1

我不太熟悉 PDF 到 DOCX 的转换,但我认为您可以根据需要尝试自定义配置文件。

在您的代码中的某个时刻,您应该创建一个Engine对象,然后创建一个Document对象(或IFRDocument取决于您的应用程序的对象)。在将文档提供给引擎进行处理之前添加此行:

engine.LoadProfile(PROFILE_FILENAME);

然后使用“使用配置文件”部分下的 FRE 安装打包的文档中描述的一些处理参数创建文件。不要忘记在您的文件中添加:

... some params under other sections

[PageAnalysisParams]
DetectText = TRUE       --> force text detection
DetectPictures = FALSE  --> ignore pictures
... other params under PageAnalysisParams

... some params under other sections

对于条形码等,它的工作方式相同......但请记住,在从该文件中添加或删除内容时对您的结果进行基准测试,因为它可能会改变处理速度和结果的全局质量。

于 2019-08-29T13:30:02.663 回答
0

PDF 输入页面包含什么?MS Word 中的预期内容是什么?如果您能附上一个输入 PDF 文件的示例和一个 MS Word 格式的所需结果的示例,那就太好了。然后给出有用的建议会容易得多。

于 2019-08-22T08:58:12.327 回答