Java使用Aspose-Words实现Word转换Pdf

摘要:
1、Maven命令安装jar包到本地仓库mvninstall:install-file-Dfile=jar包的位置-DgroupId=上面的groupId-DartifactId=上面的artifactId-Dversion=上面的version-Dpackaging=jareg、mvninstall:install-file-Dfile=C:UsersadminDesktopdocaspose-

1、Maven命令安装jar包到本地仓库

mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面的groupId -DartifactId=上面的artifactId -Dversion=上面的version -Dpackaging=jar
eg、mvn install:install-file -Dfile=C:UsersadminDesktopdocaspose-words-15.8.0-jdk16.jar -DgroupId=com.aspose -DartifactId=aspose-words -Dversion=15.8.0 -Dpackaging=jar

2、引入Aspose-Words依赖

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-words</artifactId>
    <version>15.8.0</version>
</dependency>

3、license.xml文件内容(放在/src/main/resources目录下)

<License>
    <Data>
        <Products>
            <Product>Aspose.Total for Java</Product>
            <Product>Aspose.Words for Java</Product>
        </Products>
        <EditionType>Enterprise</EditionType>
        <SubscriptionExpiry>20991231</SubscriptionExpiry>
        <LicenseExpiry>20991231</LicenseExpiry>
        <SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber>
    </Data>
    <Signature>sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=
    </Signature>
</License>

4、WordPdfUtil.java——封装工具类

packagecom.lynch.asap.config.util;

importjava.io.File;
importjava.io.FileOutputStream;
importjava.io.InputStream;

importcom.aspose.words.Document;
importcom.aspose.words.License;
importcom.aspose.words.SaveFormat;

/*** Word 转 Pdf 帮助类
 * 
 * @authoradmin
 *
 */
public classWordPdfUtil {
    private static boolean license = false;

    public static voidmain(String[] args) {
//doc2pdf("C:\Users\admin\Desktop\doc\111.docx","C:\Users\admin\Desktop\doc\aaa.pdf");
//doc2pdf("C:\Users\admin\Desktop\doc\222.docx","C:\Users\admin\Desktop\doc\bbb.pdf");
//doc2pdf("C:\Users\admin\Desktop\doc\333.docx","C:\Users\admin\Desktop\doc\ccc.pdf");
        doc2pdf("/root/micro/333.docx","/root/micro/ccc.pdf");
    }
    
    static{
        try{
            //license.xml放在src/main/resources文件夹下
            InputStream is = WordPdfUtil.class.getClassLoader().getResourceAsStream("license.xml");
            License aposeLic = newLicense();
            aposeLic.setLicense(is);
            license = true;
        } catch(Exception e) {
            license = false;
            System.out.println("License验证失败...");
            e.printStackTrace();
        }
    }
    
    /*** doc转pdf
     * 
     * @paramwordPath 
     * @parampdfPath 
     */
    public static voiddoc2pdf(String wordPath, String pdfPath) {
        //验证License 若不验证则转化出的pdf文档会有水印产生
        if (!license) {
            System.out.println("License验证不通过...");
            return;
        }
        
        try{
            long old =System.currentTimeMillis();
            //新建一个pdf文档
            File file = newFile(pdfPath);
            FileOutputStream os = newFileOutputStream(file);
            //Address是将要被转化的word文档
            Document doc = newDocument(wordPath);
            //全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF, EPUB, XPS, SWF 相互转换
doc.save(os, SaveFormat.PDF);
            long now =System.currentTimeMillis();
            os.close();
            //转化用时
            System.out.println("Word 转 Pdf 共耗时:" + ((now - old) / 1000.0) + "秒");
        } catch(Exception e) {
            System.out.println("Word 转 Pdf 失败...");
            e.printStackTrace();
        }
    }
}

该段代码如果想要在Linux服务器上完美运行,需要给Linux服务器安装中文字体库,否则所有中文字符将会乱码,点击此处查看解决方案

免责声明:文章转载自《Java使用Aspose-Words实现Word转换Pdf》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【转】Oracle通过ODBC连接SQL Server数据库jQuery之自定义datagrid控件下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

jmeter监控内存,CPU等方法

当然,我们也可以选择本地进程下的远程进程来获取服务器的内存使用情况和其他信息。在文本框中输入需要测试的服务器的IP地址:port,然后在下面输入用户名和密码。单击“连接”以查看发生的情况。...

Foxyproxy 火狐代理插件

Firefox上的插件Autoproxy一直很难使用。它永远不能更新规则,但foxyproxy可以替代它。用鼠标中键单击foxyproxy图标以在不同的代理方法之间切换。foxyproxy图标从foxhead变为蓝色,因为内容传输发生在网页中,该传输通过默认代理服务器,默认代理的初始颜色为蓝色。...

图论介绍(Graph Theory)

G-v具有比G更多的连通分支,因此v被称为G的截断点G-e具有比G多的连通分支。定理:连通图G,其中e是桥e不属于G的任何环有顶点u,v,使得任何路径u-v都通过e连通图G;而w是存储在顶点u,v处的割点,使得任意路径u-v通过w定义:顶点之间的距离x-y:所有x-y路径的最小长度。...

Sublime Text3注册激活和部分配置

此时,我们可以输入要安装的插件包ConvertToUTF85。设置中文对齐方式、字体等//设置默认代码“default_encoding”:“UTF-8”,//显示代码“show_encoding”:true,//显示行号“show_line_endings”:true,//设置字号“font_size”:14,//设置字体对齐方式“font_options...

Linux cat查看文件,查找关键字(grep),统计(wc -l)

######cat搜索关键字的语法:cat file | grep keyword | wc lcat/proc/meminfo | grepSwap | wc-l#######Linux系统中wc命令的功能是统计指定文件中的字节、单词和行数,并显示和输出统计结果。如果没有给出文件名,则从标准输入中读取。wc还提供指定文件的总统计数。此标志不能与-c标志一起...

一些替代Xshell的软件推荐

TransmitTransmit是一个30美元价格的共享软件,它覆盖了几乎所有的常用功能,包括远程文件编辑和文件夹同步,尽管其有30美元的价格,很多Windows用户也希望Transmit能出一个Win版的。FireFTPFireFTP是一个Firefox扩展,能直接集成一个强大的FTP客户端到我们最喜爱的浏览器Firefox上。CyberduckCyber...