Java 将Word转为PDF/Html/图片/XPS/SVG

2025-11-05 11:34:45

1、创建Maven项目程序,通过maven仓库下载导入。以IDEA为例,新建Maven项目,在pom.xml文件中配置maven仓库路径,并指定spire.cloud.sdk的依赖,如下:

<repositories>

    <repository>

        <id>com.e-iceblue</id>

        <name>cloud</name>

        <url>http://repo.e-iceblue.cn/repository/maven-public/</url>

    </repository>

</repositories>

<dependencies>

        <dependency>

            <groupId> cloud </groupId>

            <artifactId>spire.cloud.sdk</artifactId>

            <version>3.5.0</version>

        </dependency>

        <dependency>

        <groupId> com.google.code.gson</groupId>

        <artifactId>gson</artifactId>

        <version>2.8.1</version>

        </dependency>

        <dependency>

            <groupId> com.squareup.okhttp</groupId>

            <artifactId>logging-interceptor</artifactId>

            <version>2.7.5</version>

        </dependency>

        <dependency>

            <groupId> com.squareup.okhttp </groupId>

            <artifactId>okhttp</artifactId>

            <version>2.7.5</version>

        </dependency>

        <dependency>

            <groupId> com.squareup.okio </groupId>

            <artifactId>okio</artifactId>

            <version>1.6.0</version>

        </dependency>

        <dependency>

            <groupId> io.gsonfire</groupId>

            <artifactId>gson-fire</artifactId>

            <version>1.8.0</version>

        </dependency>

        <dependency>

            <groupId>io.swagger</groupId>

            <artifactId>swagger-annotations</artifactId>

            <version>1.5.18</version>

        </dependency>

        <dependency>

            <groupId> org.threeten </groupId>

            <artifactId>threetenbp</artifactId>

            <version>1.3.5</version>

        </dependency>

</dependencies>

完成配置后,点击“Import Changes” 即可导入所有需要的jar文件。

如果使用的是Eclipse,可参考“ E-iceblue官网->在线编辑->帮助文档->WebAPI->Java->通过 Maven 仓库安装 Spire.Cloud Web API  "的导入方法。

导入结果如下:

Java 将Word转为PDF/Html/图片/XPS/SVG

1、如图所示:

Java 将Word转为PDF/Html/图片/XPS/SVG

1、如图所示:

Java 将Word转为PDF/Html/图片/XPS/SVG

1、1. Word转为PDF

将Word转为PDF时,可通过convert()方法直接指定转换的格式为PDF格式,或者通过convertToPdf()方法在转换成PDF时嵌入字体文件到PDF。

1.1 直接通过convert()方法转换,这里转换可支持除PDF格式外,其他多种文件格式

import spire.cloud.word.sdk.client.ApiException;

 

import spire.cloud.word.sdk.client.Configuration;

 

import spire.cloud.word.sdk.client.api.ConvertApi;

 

 

public class WordToPDF {

 

    //配置App账号信息

 

    static String appId = "App ID";

 

    static String appKey = "App Key";

 

    static String baseUrl = "https://api.e-iceblue.cn";

 

    static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl);

 

    static ConvertApi convertApi = new ConvertApi(wordConfiguration);

 

 

    public static void main(String[] args) throws ApiException {

 

        String name = "Test.docx";//用于测试的Word源文档

 

        String format = "pdf";//转换的目标文档格式,具体可包括多种文档格式,如postScript, pcl, dot, dotx, dotm, docm, odt, wordxml, wordml, pdf, doc, docx, rtf, epub, xps, html

 

        String password = null;//源文档密码

 

        String folder = "input";//源文档所在文件夹

 

        String storage = null;//冰蓝云提供的2G免费存储空间

 

        String destFilePath = "output/convertWordToPDF.pdf";//转换后的结果文档路径(这里保存在output文件夹下)

 

 

        //调用方法转换文档格式

 

        convertApi.convert(name, format, destFilePath, password, folder, storage);

 

    }

 

}

1.2转换时,嵌入字体文件

import spire.cloud.word.sdk.client.*;

 

import spire.cloud.word.sdk.client.api.ConvertApi;

 

import spire.cloud.word.sdk.client.model.PrivateFont;

 

 

import java.util.ArrayList;

 

import java.util.List;

 

 

public class WordToPDF {

 

    //配置App账号信息

 

    static String appId = "App ID";

 

    static String appKey = "APP Key";

 

    static String baseUrl = "https://api.e-iceblue.cn";

 

    static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl);

 

    static ConvertApi convertApi = new ConvertApi(wordConfiguration);

 

 

    public static void main(String[] args) throws ApiException{

 

        String name = "Test.docx";//用于测试的Word源文档

 

        String password = null;//源文档密码

 

        String folder = "input";//源文档所在文件夹

 

        String storage = null;//冰蓝云提供的2G免费存储空间

 

        String destFilePath = "output/convertWordToPdf.pdf";//转换后的结果文档路径(这里保存在output文件夹下)

 

 

        //当系统上没有安装Word文档中使用的字体时,可以通过加载字体文件将字体添加到pdf文档中,以便绘制文本

 

        List<PrivateFont> privateFonts = new ArrayList<PrivateFont>();

 

        privateFonts.add(new PrivateFont("华文中宋", "input/STZHONGS.ttf"));

 

        privateFonts.add(new PrivateFont("consola", "input/consola.ttf"));

 

 

        //调用方法将Word转为PDF

 

        convertApi.convertToPdf(name, destFilePath, password, folder, storage, privateFonts);

 

    }

 

}

2、2. Word转Html

这里转为Html同样也可以通过1.1里面的转换方法,或者通过convertToHtml()方法来转换

import spire.cloud.word.sdk.client.ApiException;

 

import spire.cloud.word.sdk.client.Configuration;

 

import spire.cloud.word.sdk.client.api.ConvertApi;

 

 

public class WordToHtml {

 

    //配置App账号信息

 

    static String appId = "App ID";

 

    static String appKey = "App Key";

 

    static String baseUrl = "https://api.e-iceblue.cn";

 

    static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl);

 

    static ConvertApi convertApi = new ConvertApi(wordConfiguration);

 

 

    public static void main(String[] args) throws ApiException{

 

        String name = "Test.docx";//用于测试的Word源文档

 

        String password = null;//源文档密码

 

        String folder = "input";//源文档所在文件夹

 

        String storage = null;//冰蓝云提供的2G免费存储空间

 

        String destFolder = "output/convertWordToHtml.html";//结果文档路径

 

 

        //调用方法将Word转为HTML

 

        convertApi.convertToHtml(name, destFolder, password, folder, storage);

 

    }

 

}

3、3. Word转图片

转为图片时,支持将Word转为位图convertToBitmap()、矢量图convertToVectorgraph()

import spire.cloud.word.sdk.client.ApiException;

 

import spire.cloud.word.sdk.client.Configuration;

 

import spire.cloud.word.sdk.client.api.ConvertApi;

 

 

public class WordToImage {

 

    //配置App账号信息

 

    static String appId = "App ID";

 

    static String appKey = "App Key";

 

    static String baseUrl = "https://api.e-iceblue.cn";

 

    static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl);

 

    static ConvertApi convertApi = new ConvertApi(wordConfiguration);

 

 

    public static void main(String[] args) throws ApiException {

 

        String name = "Test.docx";//用于测试的Word源文档

 

        String imageFormat = "png";//指定转换后的目标文档格式,支持jpeg, bmp, png

 

        String password = null;//源文档密码

 

        String folder = "input";//源文档所在文件夹

 

        String storage = null;//冰蓝云提供的2G免费存储空间

 

        Integer startPage = null;

 

        Integer pageCount = null;

 

        String destFolder = "output/ConvertWordToImage.png";//转换后的文档路径

 

 

        //调用方法转为位图

 

        convertApi.convertToBitmap(name, imageFormat, destFolder, password, folder, storage, startPage, pageCount);

 

 

 

        /*String name = "Test.docx";//Word源文档

 

        String imageType = "svg";//指定转换后的目标文档格式,支持wmf, svg

 

        String password = null;//源文档密码

 

        String folder = "input";//源文档所在文件夹

 

        String storage = null;

 

        Integer startPage = null;

 

        Integer pageCount = null;

 

        String destFolder = "output/ConvertWordToVectorgraph.svg";//转换后的结果文档路径

 

 

        //调用方法转为矢量图

 

        convertApi.convertToVectorgraph(name, imageType, destFolder, password, folder, storage, startPage, pageCount);*/

 

    }

 

}

4、所有转换后的结果文档可在冰蓝云“文档管理”下的output文件夹中查看。具体可参照步骤二的内容。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢