Java 添加、替換、刪除PDF中的圖片的示例代碼
概述
本文介紹通過java程序向PDF文檔添加圖片,以及替換和刪除PDF中已有的圖片。另外,關(guān)于圖片的操作還可參考設(shè)置PDF 圖片背景、設(shè)置PDF圖片水印、讀取PDF中的圖片、將PDF保存為圖片等文章。
工具:Free Spire.PDF for Java (免費(fèi)版)
Jar獲取及導(dǎo)入:官網(wǎng)下載,并解壓將lib文件夾下的jar文件導(dǎo)入java程序,或者通過maven倉庫下載并導(dǎo)入。
jar導(dǎo)入效果:
Java代碼示例
【示例1】添加圖片到PDF
import com.spire.pdf.*; import com.spire.pdf.graphics.*; public class AddImage { public static void main(String[] args) { //創(chuàng)建文檔 PdfDocument pdf = new PdfDocument(); //添加一頁 PdfPageBase page = pdf.getPages().add(); //加載圖片,并獲取圖片高寬 PdfImage image = PdfImage.fromFile("fj.png"); int width = image.getWidth()/2; int height = image.getHeight()/2; //繪制圖片到PDF page.getCanvas().drawImage(image,50,50,width, height); //保存文檔 pdf.saveToFile("AddImage.pdf"); pdf.dispose(); } }
圖片添加效果:
【示例2】替換PDF中的圖片
import com.spire.pdf.*; import com.spire.pdf.graphics.PdfImage; public class ReplaceImage { public static void main(String[] args) { //加載PDF文檔 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("AddImage.pdf"); //獲取第一頁 PdfPageBase page = pdf.getPages().get(0); //加載一張圖片 PdfImage image = PdfImage.fromFile("lh.png"); //使用加載的圖片替換第一頁上的第一張圖片 page.replaceImage(0, image); //保存文檔 pdf.saveToFile("ReplaceImage.pdf"); pdf.dispose(); } }
圖片替換效果:
【示例3】刪除PDF中的圖片
import com.spire.pdf.*; public class DeleteImage { public static void main(String[] args) { //創(chuàng)建PdfDocument對(duì)象 PdfDocument pdf = new PdfDocument(); //加載PDF文檔 pdf.loadFromFile("AddImage.pdf"); //獲取指定頁 PdfPageBase page = pdf.getPages().get(0); //刪除頁面上的指定圖片 page.deleteImage(0); //保存文檔 pdf.saveToFile("DeleteSpecificImage.pdf", FileFormat.PDF); pdf.dispose(); } }
圖片刪除效果:
總結(jié)
以上所述是小編給大家介紹的Java 添加、替換、刪除PDF中的圖片的示例代碼,希望對(duì)大家有所幫助,也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
詳解Spring Cloud中Hystrix 線程隔離導(dǎo)致ThreadLocal數(shù)據(jù)丟失
這篇文章主要介紹了詳解Spring Cloud中Hystrix 線程隔離導(dǎo)致ThreadLocal數(shù)據(jù)丟失,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03java中Spring Security的實(shí)例詳解
這篇文章主要介紹了java中Spring Security的實(shí)例詳解的相關(guān)資料,spring security是一個(gè)多方面的安全認(rèn)證框架,提供了基于JavaEE規(guī)范的完整的安全認(rèn)證解決方案,需要的朋友可以參考下2017-09-09Java并發(fā)編程深入理解之Synchronized的使用及底層原理詳解 上
在并發(fā)編程中存在線程安全問題,主要原因有:1.存在共享數(shù)據(jù) 2.多線程共同操作共享數(shù)據(jù)。關(guān)鍵字synchronized可以保證在同一時(shí)刻,只有一個(gè)線程可以執(zhí)行某個(gè)方法或某個(gè)代碼塊,同時(shí)synchronized可以保證一個(gè)線程的變化可見(可見性),即可以代替volatile2021-09-09Spring Boot定時(shí)器創(chuàng)建及使用解析
這篇文章主要介紹了Spring Boot定時(shí)器創(chuàng)建及使用解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07java開發(fā)分布式服務(wù)框架Dubbo暴露服務(wù)過程詳解
這篇文章主要為大家介紹了java開發(fā)分布式服務(wù)框架Dubbo暴露服務(wù)的過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11