PDF是将文档发送给第三方的最常用格式之一。造成这种流行的原因是PDF跨多个平台的兼容性,而不考虑任何硬件/软件要求。但是,在某些情况下,可能希望将PDF文档转换为可编辑的文档格式。
在这种情况下, PDF到Word DOC或DOCX可能是优先级转换选项。为了使转换过程自动化,本文将展示如何在Java中以编程方式将PDF转换为Word。如果你还没有升级Aspose.PDF最新版测试,可以点击这里下载。
在本文中,我们将使用Aspose.PDF在Java中执行以下PDF到DOC/DOCX的转换:
- 使用Java将PDF转换为DOC
- 使用Java将PDF转换为DOCX
- 使用其他选项将PDF转换为Word(DOC / DOCX)
①使用Java将PDF转换为DOC
在应用程序中引用了Java的Aspose.PDF之后,可以通过几行代码将任何PDF文档转换为DOC格式。以下是执行此转换所需的步骤。
- 创建Document类的实例,并使用输入的PDF文件的路径对其进行初始化
- 使用输出DOC文件的名称和SaveFormat.Doc参数调用Document.save()方法
以下代码示例显示了如何在Java中将PDF转换为DOC。
// Load source PDF file Document doc = new Document("input.pdf"); // Save resultant DOC file doc.save("output.doc", SaveFormat.Doc);
输入的PDF文件
转换后的Excel文档
②使用Java将PDF转换为DOCX
DOCX是Word文档的一种众所周知的格式,与DOC格式相反,DOCX的结构基于二进制文件和XML文件。如果要将PDF转换为DOCX格式,可以使用Document.save()方法中的SaveFormat.DocX参数告诉API这样做。
以下代码示例显示了如何在Java中将PDF转换为DOCX。
// Load source PDF file Document doc = new Document("input.pdf"); // Save resultant DOCX file doc.save("output.docx", SaveFormat.DocX);
③PDF到Word转换的其他选项
Aspose.PDF for Java还提供了一些其他选项,可以在PDF到Word的转换中使用这些选项,例如输出格式,图像分辨率,文本行之间的距离等。DocSaveOptions类用于此目的,以下是您可以使用的选项列表:
- setFormat(int value) –设置输出格式(Doc,Docx等)。
- setAddReturnToLineEnd(boolean value) –添加段落或换行符。
- setImageResolutionX(int value) –设置图像的X分辨率。
- setImageResolutionY(int value) –设置图像的Y分辨率。
- setMaxDistanceBetweenTextLines(float value) –将文本行分组为段落。
- setMode(int value) –设置识别模式。
- setRecognizeBullets(boolean value) –打开项目符号的识别。
- setRelativeHorizontalProximity(float value) –设置输入PDF文件中不同文本元素之间的间距。
下面的代码示例演示如何使用Java将PDF中的DocSaveOptions类转换为DOCX。
// Load source PDF file Document doc = new Document("input.pdf"); // Instantiate DocSaveOptions instance DocSaveOptions saveOptions = new DocSaveOptions(); // Set output format saveOptions.setFormat(DocSaveOptions.DocFormat.DocX); // Set the recognition mode as Flow saveOptions.setMode(DocSaveOptions.RecognitionMode.Flow); // Set the horizontal proximity as 2.5 saveOptions.setRelativeHorizontalProximity(2.5f); // Enable bullets recognition during conversion process saveOptions.setRecognizeBullets(true); // Save resultant DOCX file doc.save("resultant.docx", saveOptions);
来源:oschina
链接:https://my.oschina.net/u/4087915/blog/3160242