Aspose.PDF for Java系列5-转化PDF文档为Word

Aspose.PDF for Java系列5-转化PDF文档

DocFormat枚举类提供了DOCX格式的文件输出格式选项。如果你想要将PDF转化为DOCX格式,请参考本文下面的内容。

PDF转化为DOCX

步骤:

  1. 创建一个加载了PDF文档的Document对象。
  2. 使用Document.save()方法转化成SaveFormat.DocX格式。

具体代码如下:

    public static void ConvertPDFtoWord_DOCX_Format() {
        // Open the source PDF document
        Document pdfDocument = new Document(_dataDir + "PDFToDOC.pdf");
        // Save the resultant DOC file
        pdfDocument.save(_dataDir + "saveOptionsOutput_out.doc", SaveFormat.DocX);
    }

DocSaveOptions类有个Format属性,它提供了文档格式(DOC、DOCX)的功能。要将PDF转化成为DOCX格式,需要设置DocSaveOptions为DocFormat.DOCX.

具体代码如下:

    public static void ConvertPDFtoWord_Advanced_DOCX_Format()
    {        
        // Open the source PDF document
        Document pdfDocument = new Document(_dataDir + "PDFToDOC.pdf");
    
        // Instantiate DocSaveOptions object
        DocSaveOptions saveOptions = new DocSaveOptions();
        // Specify the output format as DOCX
        saveOptions.setFormat(DocSaveOptions.DocFormat.DocX);
        // Set other DocSaveOptions params
        // ....
        
        // Save document in docx format
        pdfDocument.save("ConvertToDOCX_out.docx", saveOptions);
    }

PDF转化为DOC

步骤:

  1. 创建一个加载了PDF文档的Document对象。
  2. 使用Document.save()方法转化成SaveFormat.Doc格式。

代码如下:

    public static void main(String[] args) throws IOException {
        ConvertPDFtoWord();
        ConvertPDFtoWordDocAdvanced();
    }
    
    public static void ConvertPDFtoWord() {
        // Open the source PDF document
        Document pdfDocument = new Document(_dataDir + "PDFToDOC.pdf");
        // Save the file into MS document format
        pdfDocument.save(_dataDir + "PDFToDOC_out.doc", SaveFormat.Doc);
    }

使用DocSaveOptions进行转化

    public static void ConvertPDFtoWordDocAdvanced()
    {
        Path pdfFile = Paths.get(_dataDir.toString(), "PDF-to-DOC.pdf");
        Path docFile = Paths.get(_dataDir.toString(), "PDF-to-DOC.doc");
        Document pdfDocument = new Document(pdfFile.toString());        
        DocSaveOptions saveOptions = new DocSaveOptions();
        
        // Specify the output format as DOC
        saveOptions.setFormat(DocSaveOptions.DocFormat.Doc);
        // Set the recognition mode as Flow
        saveOptions.setMode(DocSaveOptions.RecognitionMode.Flow);
        
        // Set the Horizontal proximity as 2.5
        saveOptions.setRelativeHorizontalProximity(2.5f);
        
        // Enable the value to recognize bullets during conversion process
        saveOptions.setRecognizeBullets(true);
        pdfDocument.save(docFile.toString(), saveOptions);
    }

关于DocSaveOptions类

DocSaveOptions类提供了许多属性,方便设置将PDF转化为DOC格式的过程。可以通过设置Mode属性来指定PDF内容识别模式,Mode的取值来自RecognitionMode枚举类。

  • Textbox mode是最快速的,但是转化完成的DOC文档编辑性较差。原本的PDF文档中每个都被视为文本块进行了转化。这样可以最大程序保持原本PDF文档的样子,输出的文档高度相似,唯一不好的就是编辑起来比较麻烦。
  • Flow mode模式引擎执行分组和多级分析,尽量还原PDF文档,但是易于编辑。
  • RelativeHorizontalProximity属性可用于控制文本元素之间的相对接近度(字间距、字体大小)。指定字体大小的相似百分比。
  • RecognitionBullets用来设置转化过程的快速识别。
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值