java替換圖片中文字_Java 添加、替換、刪除Word中的圖片

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

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

Jar文件獲取方法:

方法1:通過官網下載jar文件包。下載后,解壓文件;解壓后,將lib文件夾下的Spire.Doc.jar導入java程序。如下圖:

e00dede3994dc53cb3294c69f052bbf0.png

方法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();}
}

圖片添加效果:

1f3e10f54608ba32c52ac63a8293aeb3.png

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

圖片替換效果:

08a51a6aae62e3ce491e3f2d422b2f97.png

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

圖片刪除效果:

4044f514e64c031197b0a889905440d7.png

(本文完)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/532074.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/532074.shtml
英文地址,請注明出處:http://en.pswp.cn/news/532074.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

kafka如何保證不重復消費又不丟失數據_Kafka寫入的數據如何保證不丟失?

我們暫且不考慮寫磁盤的具體過程&#xff0c;先大致看看下面的圖&#xff0c;這代表了 Kafka 的核心架構原理。Kafka 分布式存儲架構那么現在問題來了&#xff0c;如果每天產生幾十 TB 的數據&#xff0c;難道都寫一臺機器的磁盤上嗎?這明顯是不靠譜的啊!所以說&#xff0c;這…

不允許輸入特殊字符的正則表達式_JavaScript正則表達式常用技巧

正則表達式是用于匹配字符串中字符組合的模式。在 JavaScript 中&#xff0c;正則表達式也是對象。這些模式被用于 RegExp 的 exec 和 test 方法, 以及 String 的 match、matchAll、replace、search 和 split 方法。正則表達式的掌握程度能粗略地看出程序員的技術底子&#xff…

latex 算法_GitHub項目awesome-latex-drawing新增內容(四):繪制貝葉斯網絡

近期&#xff0c;我們整理和開源了一個基于LaTeX的科技繪圖項目&#xff0c;并將其取名為awesome-latex-drawing&#xff08;GitHub網址為&#xff1a;https://github.com/xinychen/awesome-latex-drawing&#xff09;&#xff0c;案例包括貝葉斯網絡、圖模型、矩陣/張量示意圖…

python123動物重量排序_python進階

面向對象oopclass Student(object):def __init__(self,name,score)self.name nameself.score scoredef print_score(self)print(%s: %s % (self.name,self.score))給對象發消息實際上就是調用對象對應的關聯函數&#xff0c;我們稱之為對象的方法(Method)。面向對象的程序寫出…

mysql中的生日應該是什么類型_MySQL中的定點數類型

上一篇文章我們嘮叨了浮點數&#xff0c;知道了浮點數存儲小數是不精確的。本篇繼續嘮叨一下MySQL中的另一種存儲小數的方式 —— 定點數。浮點數文章閃現&#xff1a;什么, 0.3 - 0.2 ≠ 0.1 ? 什么鬼定點數類型正因為用浮點數表示小數可能會有不精確的情況&#xff0c;在一些…

python怎么制作圖像_python數字圖像處理(5):圖像的繪制

實際上前面我們就已經用到了圖像的繪制&#xff0c;如&#xff1a;io.imshow(img)這一行代碼的實質是利用matplotlib包對圖片進行繪制&#xff0c;繪制成功后&#xff0c;返回一個matplotlib類型的數據。因此&#xff0c;我們也可以這樣寫&#xff1a;importmatplotlib.pyplot …

axios代理跨域 cli4_vuecli 3.0之跨域請求代理配置及axios路徑配置 莫小龍

vue-cli 3.0之跨域請求代理配置及axios路徑配置問題&#xff1a;在前后端分離的跨域請求中&#xff0c;報跨域問題配置&#xff1a;vue.config.js&#xff1a;module.exports {runtimeCompiler: true,publicPath: /, // 設置打包文件相對路徑devServer: {// open: process.pla…

string轉為char數組_StringBuilder的區別是什么?String是不可變?一點課堂(多岸學院)...

String和StringBuffer、StringBuilder的區別可變性簡單的來說&#xff1a;String 類中使用 final 關鍵字字符數組保存字符串&#xff0c;private final char value[]&#xff0c;所以 String 對象是不可變的。而StringBuilder 與 StringBuffer 都繼承自 AbstractStringBuild…

python去年軟件排行_2017年編程語言排行榜,Python位居榜首(C語言需求最大)

最近IEEE Spectrum 發布了編程語言交互式排行榜&#xff0c;為很多學習代碼的朋友們詳解各類代碼語言的需求和占有率。為學習代碼的朋友們能更加重視哪一種編程語言而有一個明確的方向。下面排行榜123網為你公布2017年編程語言排行榜,Python位居榜首(C語言需求最大)。2017年編程…

mysql test數據庫_mysql數據庫test

Re介紹一下CentOS下MySQL數據庫的安裝與配置方法MySQL數據庫配置的具體步驟&#xff1a;1、編輯MySQL的配置文件&#xff0c;使用vi /etc/my.cnf[rootsample ~]# vi /etc/my.cnf  ← 編輯MySQL的配置文件[mysqld]datadir/var/lib/mysqlsocket/var/lib/mysql/mysql.sock# Defau…

mysql 升級 openssl_【1分鐘教程】LNMP架構應用實戰 Openssl升級操作

由于實際生產環境需求&#xff0c;需要將LNMP環境中的openssl版本升級至目前最新版本openssl-1.1.0c&#xff0c;這玩意升級還真的不是一般的麻煩&#xff0c;由于它與系統各種服務都有相關的聯系&#xff0c;比如ssh服務等&#xff0c;因此&#xff0c;升級非常的繁瑣,所以今天…

miui秒解bl鎖_MIUI12解鎖bl篇(原諒我的過失,接上篇文章)

求原諒真心求原諒由于我的疏忽&#xff0c;上期教程不完整&#xff0c;對大家造成不便在這里給大家真誠道歉&#xff01;對不起&#xff01;請收下我的膝蓋&#xff01;&#xff01;&#xff01;我的上個教程小米手機MIUI系統降級任意版本通用教程&#xff0c;MIUI12→MIUI9因為…

腐蝕rust服務器命令_【使用 Rust 寫 Parser】2. 解析Redis協議

系列所有文章https://zhuanlan.zhihu.com/p/115017849?zhuanlan.zhihu.comhttps://zhuanlan.zhihu.com/p/139387293?zhuanlan.zhihu.comhttps://zhuanlan.zhihu.com/p/146455601?zhuanlan.zhihu.comhttps://zhuanlan.zhihu.com/p/186217695?zhuanlan.zhihu.com在基本熟悉 n…

python中dic_python之dic {字典}(重要指數*****)

1. 什么是字典{name: 汪峰, age: 18} 鍵:值 別的語言鍵值對數據鍵: 必須是可哈希(不可變的數據類型),并且是唯一的值: 任意可以保存任意類型的數據字典是無序的python3.6版本以上,默認定義了順序,python3.5以下是隨機顯示不能進?切片?作. 它只能通過key來獲取dict中的數據字典…

python裝飾器帶參數函數二階導數公式_一文搞定Python裝飾器,看完面試不再慌

本文始發于個人公眾號&#xff1a;TechFlow&#xff0c;原創不易&#xff0c;求個關注今天是Python專題的第12篇文章&#xff0c;我們來看看Python裝飾器。一段囧事差不多五年前面試的時候&#xff0c;我就領教過它的重要性。那時候我Python剛剛初學乍練&#xff0c;看完了廖雪…

centos7源碼安裝mysql報錯_CentOS7 下源碼安裝MySQL數據庫 8.0.11

本文主要向大家介紹了CentOS7 下源碼安裝MySQL數據庫 8.0.11&#xff0c;通過具體的內容向大家展現&#xff0c;希望對大家學習MySQL數據庫有所幫助。CentOS7 下源碼安裝MySQL 8.0.11系統環境&#xff1a;CentOS7&#xff0c; 內核&#xff1a;Linux 3.10.0-862.el7.x86_64如果…

python全排列問題_Python基于回溯法子集樹模板解決全排列問題示例

本文實例講述了Python基于回溯法子集樹模板解決全排列問題。分享給大家供大家參考&#xff0c;具體如下&#xff1a;問題實現 a, b, c, d 四個元素的全排列。分析這個問題可以直接套用排列樹模板。不過本文使用子集樹模板。分析如下&#xff1a;一個解x就是n個元素的一種排列&a…

file js new 傳到后臺_js 圖片上傳傳給后臺的3種格式

$("#imgfile").change(function () {var formData new FormData();$.each($(#imgfile)[0].files, function (i, file) {formData.set(idcard, file); //idcard 字段 根據自己后端接口定});//processData: false, contentType: false,多用來處理異步上傳二進制文件。…

usbserialcontroller驅動安裝不了_win10-有NVIDIA獨顯提示未安裝控制面板的離線安裝方式...

最近越來越多的用戶反映NVIDIA顯卡驅動設置不了啦&#xff0c;找不到NVIDIA顯卡的控制面板。 也不知道NVIDIA在什么版本開始驅動安裝包就不自帶NVIDIA顯卡控制面板了。 全新安裝的顯卡驅動就沒有控制面板&#xff1b;或者Windows 10自帶更新了顯卡新版驅動后導致沒有。 每次帶N…

mysql 多實例 獨立配置文件_三、安裝配置多實例MYSQL5.6-多獨立配置文件方法

三、安裝配置多實例MYSQL5.6-多獨立配置文件方法1、準備工作檢查操作系統版本、內核版本、selinux是否關閉、防火墻策略、IP地址、主機名配置、host表配置、yum配置上傳cmake、mysql5.6軟件包具體步驟參考源碼安裝mysql-單實例配置文檔2、安裝cmake軟件2.1 安裝編譯軟件環境[[e…