手写一个doc转pdf功能包

工具类

package com.yyj.DocToPdfUtil;

import com.aspose.words.License;
import com.aspose.words.Document;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;



public class DocToPDF {

    private static boolean getLicense() {
        boolean result = false;
        try {
            InputStream is = DocToPDF.class.getClassLoader()
                    .getResourceAsStream("license.xml");
            License license = new License();
            license.setLicense(is);
            result = true;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return result;
    }

    public static void wordConverterToPdf(String wordPath, String pdfPath) {
        if (!getLicense()) {          // 验证License 若不验证则转化出的pdf文档会有水印产生
            return;
        }
        try {
            long old = System.currentTimeMillis();
            File file = new File(pdfPath);  //新建一个pdf文档
            FileOutputStream os = new FileOutputStream(file);
            Document doc = new Document(wordPath);                    //Address是将要被转化的word文档
            doc.save(os, com.aspose.words.SaveFormat.PDF);//全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF, EPUB, XPS, SWF 相互转换
            long now = System.currentTimeMillis();
            os.close();
            System.out.println("word turn to pdf token:" + ((now - old) / 1000.0) + "s");  //转化用时
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

主程序

import com.yyj.DocToPdfUtil.DocToPDF;

import java.util.Scanner;

public class testDoc_PDF {

       public static void main(String[] args) {
              DocToPDF doc=new DocToPDF();
              Scanner input=new Scanner(System.in);
              System.out.println("请输入要转换的文件路径");
              String word=input.next()+".docx";
              System.out.println("请输入转换成功的路径");
              String pdf=input.next()+".pdf";

              doc.wordConverterToPdf(word,pdf);
              System.out.println("转换成功");
       }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值