Spire.Cloud.Word 插入图片到 Word 文档,设置 Word 文档里的图片样式

Spire.Cloud.Word API给开发者提供了 imagesApi 类用于添加,获取或删除Word文档里的图片。本文将介绍如何使用Spire.Cloud.Word API插入图片到Word文档,并设置Word文档里的图片大小,样式等。

首先,请在 https://cloud.e-iceblue.cn 网站上注册账号并登陆,然后点击导航栏“我的应用” ,创建一个应用,获得App ID和App Key。

Spire.Cloud.Word 插入图片到 Word 文档,设置 Word 文档里的图片样式

2、点击导航栏“文档管理”,将Word示例文档和准备插入的图片上传至“我的文档”。

Spire.Cloud.Word 插入图片到 Word 文档,设置 Word 文档里的图片样式

3. 创建Maven应用程序,在pom.xml文件中添加以下Spire.Cloud.SDK的Maven依赖。详细步骤参考文章 通过 Maven 仓库安装 Spire.Cloud Web API

<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>

4. 新建Java class,调用Spire.Cloud.Word API操作Word文档中的图片。

插入图片到Word示例代码

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

public class CloudWord {

    static String appId = "APP ID";
    static String appKey = "APP Key";
    static String baseUrl = "https://api.e-iceblue.cn";
    //配置App ID和App Key
    static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl);
    //创建ImagesApi实例
    static ImagesApi imagesApi = new ImagesApi(wordConfiguration);

    public static void main(String[] args) throws ApiException {
        //示例文档
        String name = "Sample.docx";
        //图片
        String imagePath = "logo.png";
        String paragraphPath = "Section/0/Body/0/Paragraph/0";
        //存放原文档的文件夹,没有则为null
        String folder = null;
        //使用冰蓝云配置的2G空间存贮文档,可设置为null
        String storage = null;
        String password = null;
        Integer indexInParagraph = 0;

        //插入图片并保存到指定路径
        String destFilePath = "output/addImage_out.docx";
        imagesApi.addImage(name, imagePath, paragraphPath, destFilePath, folder, storage, password, indexInParagraph);
    }

效果图:

Spire.Cloud.Word 插入图片到 Word 文档,设置 Word 文档里的图片样式

因为图片过大,所以我们需要调整图片大小,让整个Word页面更美观。接下来我们同样使用ImagesAPI设置图片大小,位置,旋转角度等。

import spire.cloud.word.sdk.client.*;
import spire.cloud.word.sdk.client.api.ImagesApi;
import spire.cloud.word.sdk.client.model.ImageFormat;

public class CloudWord {

    static String appId = "APP ID";
    static String appKey = "APP Key";
    static String baseUrl = "https://api.e-iceblue.cn";
    //配置App ID和App Key
    static Configuration wordConfiguration = new Configuration(appId, appKey, baseUrl);
    //创建ImagesApi实例
    static ImagesApi imagesApi = new ImagesApi(wordConfiguration);

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

        //加载示例文档
        String name = "addImage_out.docx";
        String paragraphPath = "Section/0/Body/0/Paragraph/0";
        Integer index = 0;
        ImageFormat format = new ImageFormat();

        //设置图片大小
        format.setWidth(200);
        format.setHeight(200);
        format.setVerticalPosition(50);
        format.setHorizontalPosition(50);

        //设置图片旋转角度
        format.setRotation(20);
        //存放原文档的文件夹,没有则为null
        String folder = "output";
        String storage = null;
        String password = null;

        //保存到指定路径
        String destFilePath = "output/updateImageFormat_out.docx";
        imagesApi.updateImageFormat(name, paragraphPath, index, destFilePath, format, password, folder, storage);
    }
}

效果图:

Spire.Cloud.Word 插入图片到 Word 文档,设置 Word 文档里的图片样式