Java 添加、替換、刪除Word中的圖片


Java 添加、替換、刪除Word中的圖片

文檔中,可以通過圖文混排的方式來增加內容的可讀性,相比純文本文檔,在內容展現方式上也更具美觀性。在給文檔添加圖片時,可設置圖片的文本環繞方式、旋轉角度、圖片高度/寬度等;另外,也可對文檔中已有的圖片實現替換、刪除等操作。本文將從在Word文檔中添加、替換、刪除圖片等三個操作需求來介紹。具體代碼可參考以下示例。

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

【示例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();  

    }  

}  

喜歡這樣文章的可以關注我,我會持續更新,你們的關注是我更新的動力!需要更多java學習資料的也可以私信我!

祝關注我的人都:身體健康,財源廣進,福如東海,壽比南山,早生貴子,從不掉發!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM