`

Java 添加、替换、删除Word中的图片

阅读更多

 

文档中,可以通过图文混排的方式来增加内容的可读性,相比纯文本文档,在内容展现方式上也更具美观性。在给文档添加图片时,可设置图片的文本环绕方式、旋转角度、图片高度/宽度等;另外,也可对文档中已有的图片实现替换、删除等操作。本文将从在Word文档中添加、替换、删除图片等三个操作需求来介绍。具体代码可参考以下示例。

工具使用:Free Spire.Doc for Java(免费版)

Jar文件获取方法:

 

方法1通过官网下载jar文件包。下载后,解压文件;解压后,将lib文件夹下的Spire.Doc.jar导入java程序。如下图:

方法2可通过maven安装导入

 

 

【示例1】添加图片到Word

 

import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextWrappingStyle;
import com.spire.doc.fields.DocPicture;

public class AddPicture {
    public static void main(String[] args) {
        //加载文档
        Document doc = new Document();
        doc.loadFromFile("test.docx");

        //获取第二段
        Paragraph para = doc.getSections().get(0).getParagraphs().get(1);

        //添加图片,并设置图片高、宽、旋转角度、文本环绕方式
        DocPicture picture = para.appendPicture("tp.png");
        picture.setHeight(150);
        picture.setWidth(200);
        picture.setRotationEx(30);
        picture.setTextWrappingStyle(TextWrappingStyle.Inline);

        //保存文档
        doc.saveToFile("AddPicture.docx",FileFormat.Docx_2013);
        doc.dispose();
    }
}

 图片添加效果:

 


 

【示例2】替换Word中的图片

 

import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.fields.DocPicture;

public class ReplacePicture {
    public static void main(String[] args) {
        //加载Word文档
        Document doc = new Document();
        doc.loadFromFile("sample.docx");

        //获取文档中的指定段落
        Section section = doc.getSections().get(0);
        Paragraph para = section.getParagraphs().get(0);
        //替换段落中的第一张图片
        Object obj = para.getChildObjects().get(0);
        if(obj instanceof DocPicture){
            DocPicture pic = (DocPicture)obj;
            pic.loadImage("tp.png");
        }

        /*批量替换图片
        for(int i =0;i < section.getParagraphs().getCount();i++){
            Object obj = section.getParagraphs().get(i).getChildObjects();
            if(obj instanceof DocPicture){
                DocPicture pic = (DocPicture)obj;
                pic.loadImage("tp.png");
            }
        }*/

        //保存结果文档
        doc.saveToFile("ReplaceWithImage.docx", FileFormat.Docx_2013);
        doc.dispose();
    }
}

 图片替换效果:

 


 

【示例3】删除Word中的图片

import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.fields.DocPicture;

public class DeletePicture {
    public static void main(String[] args) {
        //加载测试文档
        Document doc = new Document();
        doc.loadFromFile("sample.docx");

        //获取段落
        Section sec = doc.getSections().get(0);
        Paragraph para = sec.getParagraphs().get(0);

        //获取段落中的图片对象,删除
        DocPicture picture = (DocPicture) para.get(0);
        para.getChildObjects().remove(picture);

        /*//批量删除所有图片
        for (int i = 0 ; i < sec.getParagraphs().getCount(); i++){
            Paragraph para = sec.getParagraphs().get(i);
            for (int j = 0; j< para.getChildObjects().getCount();j++) {
                Object obj = para.getChildObjects().get(j);
                if(obj instanceof DocPicture){
                    DocPicture pic = (DocPicture)obj;
                    para.getChildObjects().remove(pic);
                }
            }
        }*/

        //保存结果文档
        doc.saveToFile("DeletePictures.docx", FileFormat.Docx_2013);
        doc.dispose();
    }
}

 

 

图片删除效果:


 

 

(本文完)

 

  • 大小: 21 KB
  • 大小: 157.1 KB
  • 大小: 491.6 KB
  • 大小: 366.8 KB
1
0
分享到:
评论

相关推荐

    使用poi替换word中的图片

    这通常涉及修改段落中图片的XML元素,例如`&lt;wp:blipFill&gt;`下的`&lt;a:blip r:embed="rIdX"&gt;`。 6. **写入新的Word文档**: 创建一个`FileOutputStream`,然后使用`document.write(out)`将修改后的文档写入新的文件或...

    使用poi替换word中的文字和图片实现打印

    在IT行业中,Apache POI是一个流行的Java库,用于读写...提供的"替换word中内容和图片demo"应该是一个实际的代码示例,你可以参考它来理解并实现上述功能。请确保在实际操作时遵循最佳实践,确保代码的稳定性和效率。

    Android 读写word文档,按照指定位置插入文字,替换文字,表格,图片,替换表格中文字图片

    `XWPFParagraph`类代表Word中的段落,可以使用`createRun()`方法创建新的文本运行(text run),并设置其文本内容。如果要替换现有文本,找到对应的`XWPFRun`对象,然后调用`setText()`方法。 ```java ...

    java操作word(包含书签插值)

    Java作为一种广泛使用的编程语言,提供了多种库来操作Word文档,实现自动化填充模板,例如书签插值,这在合同制作中非常有用。本文将详细讲解如何使用Java操作Word,特别是针对书签插值的方法,以及相关的技术和工具...

    docx4j根据书签替换word中的内容

    本篇将详细介绍如何使用`docx4j`根据书签来替换Word文档中的内容。 首先,我们需要理解什么是书签。在Word文档中,书签是一种标记,可以用来标识文本或段落,以便稍后进行引用或操作。在`docx4j`中,我们可以通过...

    java运用poi填充word数据并将多个word合并为一个

    在Java编程环境中,Apache POI库是一个非常实用的工具,它允许开发者读写Microsoft Office格式的文件,包括Word文档。本篇文章将详细讲解如何利用Apache POI库在Java中实现Word文档的数据填充以及多文件合并。 1. *...

    Java Spire.Cloud.Word 在Word 文档中添加、删除形状.docx

    【Java Spire.Cloud.Word 在 Word 文档中添加、删除形状】 在 Java 开发中,处理 Word 文档的任务可能涉及到各种复杂操作,例如插入图形、文本框等形状。Spire.Cloud 提供了一款在线编辑器,它允许开发人员通过 Web...

    java word导出功能实现

    在Java编程环境中,导出Word文档是一项常见的任务,特别是在企业级应用中,如报表生成、文档自动化等场景。Apache POI库是Java开发者用来处理Microsoft Office格式文件(如Word、Excel)的一个强大工具,尤其在读取...

    Java根据word 模板,生成自定义内容的word 文件

    通过使用Apache POI,我们可以操作Word文档中的文本、样式、图片等各种元素。 接下来,我们要介绍的是Freemarker,一个基于模板的语言。在Java应用中,Freemarker通常用于生成HTML、XML或其他文本格式的文件。它的...

    POI DOCX 完美文本、表格模板文字替换并实现在指定位置插入图片浮于文字上方

    在本文中,我们将深入探讨如何使用Apache POI库在DOCX文档中实现完美的文本替换以及在指定位置插入图片,让图片浮于文字上方。Apache POI是一个流行的Java库,用于处理Microsoft Office格式的文件,包括DOCX。我们将...

    Word文档内容页眉页脚批量替换工具.doc

    在Word中,通常使用“查找和替换”功能来更改特定文本。然而,对于大量文档,手动操作显然效率低下。通过VBA,我们可以编写一个宏,遍历文档中的每个字符,查找并替换目标内容。以下是一个基本的替换VBA代码示例: ...

    JavaWord类库操作API_Free Spire.Doc for Java_5.1.0

    5.该压缩包包含的内容:samples文件夹中包含了多个操作Word文档功能的java代码示例DEMO;lib文件夹下包含了用于在java程序中的Spire.Doc.jar文件,在项目程序中调用接口方法时,需要导入该jar文件;doc文件下包含了...

    Java 获取Word中的所有插入和删除修订.doc

    在 Word 文档中启用跟踪更改功能后,会记录文档中的所有编辑行为,例如插入、删除、替换和格式更改。这篇文章将介绍如何使用 Java 获取 Word 文档中的所有插入和删除修订。 引入 Jar 为了使用 Spire.Doc for Java ...

    Java 添加、删除、替换、格式化Word中的文本的步骤详解(基于Spire.Cloud.SDK for Java)

    本文将详细介绍如何使用Spire.Cloud.SDK for Java库来实现Word文档中文本的添加、删除、替换和格式化操作。Spire.Cloud.SDK for Java提供了一个强大的TextRangesApi接口,使得这些操作变得简单易行。 首先,我们...

    java实现客户端上传图片到ftp服务器,nginx提供http服务下载图片

    在Java分布式项目中,涉及到客户端上传图片到FTP服务器并由Nginx提供HTTP服务进行图片下载,这是一个典型的文件传输和Web服务集成的场景。这里主要涉及三个关键知识点:Java FTP客户端编程、Nginx服务器配置以及Java...

    如何使用POI解决word2007中字符替换问题

    在Java开发中,Apache POI库是一个非常实用的工具,用于读取、写入和修改Microsoft Office格式的文件,包括Word文档。在这个场景中,我们关注的是如何使用POI来解决在Word 2007文档中进行字符替换的问题。在处理Word...

    java Apache poi word模板 表格模板 word报表.zip

    Java Apache POI 是一个强大的库,它允许程序员在Java应用程序中创建、修改和显示Microsoft Office格式的文件,包括Word文档(.docx)和Excel工作簿(.xlsx)。本资料包着重介绍了如何利用Apache POI库来处理Word...

    利用Itext画模板导出word,纯java实现

    通过操作DOM,我们可以添加、删除或修改文档内容。 3. **占位符替换**:在模板中,我们通常使用特殊标记(如`{{name}}`)作为占位符。在导出文档时,需要遍历这些占位符并用实际数据替换。Itext提供了方法来查找和...

    java操作word,可以随意操作书签

    Java操作Word的能力主要依赖于Apache POI库,但如标题和描述所提到的,我们可以不使用POI或其他第三方库如java2word,而是利用Java的内置功能和API来实现对Word文档的操作,尤其是针对书签的处理。下面将详细介绍...

    JAVA生成word文档代码加说明

    在Java编程环境中,生成Word文档是一项常见的任务,尤其在企业级应用中,如报告生成、自动化文档处理等。Apache POI库是Java中用于处理Microsoft Office格式文件(如Word、Excel)的一个强大工具。以下是对标题和...

Global site tag (gtag.js) - Google Analytics