詳解Java如何實現在PDF中插入,替換或刪除圖像
前言
圖文並茂的內容往往讓人看起來更加舒服,如果隻是文字內容的累加,往往會使讀者產生視覺疲勞。搭配精美的文章配圖則會使文章內容更加豐富,增加文章可讀性的同時,也能提升用戶體驗。但由於PDF文檔安全性較高,不易對其進行修改編輯,那我們要如何在PDF中插入、替換或刪除圖像呢?別擔心,今天為大傢介紹一種高效便捷的方法。我們可以通過編程的方式來實現此操作。
- 將圖像插入PDF文檔
- 替換PDF文檔中的圖像
- 刪除PDF文檔中的指定圖像
代碼編譯環境:
IntelliJ IDEA 2018(jdk 1.8.0)
PDF Jar包:Free Spire.PDF for Java 5.1.01.引入jar包
導入方法1:
手動引入。將Free Spire.PDF for Java下載到本地,解壓,找到lib文件夾下的Spire.PDF.jar文件。在IDEA中打開如下界面,將本地路徑中的jar文件引入Java程序:
導入方法2:如果您想通過 Maven安裝,則可以在 pom.xml 文件中添加以下代碼導入 JAR 文件。
<repositories> <repository> <id>com.e-iceblue</id> <url>https://repo.e-iceblue.cn/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf.free</artifactId> <version>5.1.0</version> </dependency> </dependencies>
將圖像插入PDF文檔
- 初始化 PdfDocument 類的實例。
- 使用 PdfDocument.loadFromFile() 方法加載 PDF 文檔。
- 使用 PdfDocument.getPages().get() 方法在 PDF 文檔中獲取所需的頁面。
- 使用 PdfImage.fromFile() 方法加載圖像。
- 指定頁面上圖像區域的寬度和高度。
- 指定 X 和 Y 坐標以開始繪制圖像。
- 使用 PdfPageBase.getCanvas().drawImage() 方法在頁面上繪制圖像。
- 使用 PdfDocument.saveToFile() 方法保存結果文檔。
完整代碼
import com.spire.pdf.FileFormat; import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfPageBase; import com.spire.pdf.graphics.*; public class AddImage { public static void main(String []args){ //初始化 PdfDocument 類的實例 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("阿拉斯加犬.pdf"); //獲取所需的頁面 PdfPageBase page = pdf.getPages().get(0); //加載圖像 PdfImage image = PdfImage.fromFile("圖片1.jpg"); //指定頁面上圖像區域的寬度和高度 float width = image.getWidth() * 0.30f; float height = image.getHeight() * 0.30f; //指定 X 和 Y 坐標以開始繪制圖像 float x = 130f; float y = 240f; //在頁面指定位置上繪制圖像 page.getCanvas().drawImage(image, x, y, width, height); //保存結果文檔 pdf.saveToFile("插入圖片.pdf", FileFormat.PDF); } }
效果圖
替換PDF文檔中的圖像
以下是替換PDF文檔圖像的具體步驟:
- 初始化 PdfDocument 類的實例。
- 使用 PdfDocument.loadFromFile() 方法加載 PDF 文檔。
- 使用 PdfDocument.getPages().get() 方法在 PDF 文檔中獲取所需的頁面。
- 使用 PdfImage.fromFile() 方法加載圖像。
- 使用 PdfPageBase.replaceImage() 方法將頁面上的特定圖像替換為加載的圖像。
- 使用 PdfDocument.saveToFile() 方法保存結果文檔。
完整代碼
import com.spire.pdf.FileFormat; import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfPageBase; import com.spire.pdf.graphics.PdfImage; public class ReplaceImage { public static void main(String []args){ //初始化 PdfDocument 類的實例 PdfDocument doc = new PdfDocument(); //加載 PDF 文檔 doc.loadFromFile("插入圖片.pdf"); //獲取所需的頁面 PdfPageBase page = doc.getPages().get(0); //加載圖像 PdfImage image = PdfImage.fromFile("圖片2.jpg"); //將頁面上的指定圖像替換為加載的圖像 page.replaceImage(0, image); //保存結果文檔 doc.saveToFile("替換圖片.pdf", FileFormat.PDF); } }
效果圖
刪除PDF文檔中的指定圖像
以下是從 PDF 文檔中刪除圖像的具體步驟:
- 初始化 PdfDocument 類的實例。
- 使用 PdfDocument.loadFromFile() 方法加載 PDF 文檔。
- 使用 PdfDocument.getPages().get() 方法在 PDF 文檔中獲取所需的頁面。
- 使用 PdfPageBase.deleteImage() 方法刪除頁面上的特定圖像。
- 使用 PdfDocument.saveToFile() 方法保存結果文檔。
完整代碼
import com.spire.pdf.FileFormat; import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfPageBase; public class DeleteImage { public static void main(String []args){ //初始化 PdfDocument 類的實例 PdfDocument pdf = new PdfDocument(); //加載 PDF 文檔 pdf.loadFromFile("插入圖片.pdf"); //獲取所需的頁面 PdfPageBase page = pdf.getPages().get(0); //刪除頁面上的指定圖像 page.deleteImage(0); //保存結果文檔 pdf.saveToFile("刪除圖片.pdf", FileFormat.PDF); } }
效果圖
到此這篇關於詳解Java如何實現在PDF中插入,替換或刪除圖像的文章就介紹到這瞭,更多相關Java PDF插入 替換 刪除圖像內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Java如何在PDF中添加ToolTip工具提示
- 利用Java實現在PDF中添加工具提示
- Java 創建PDF打印小冊子案例
- Java實現添加、驗證PDF數字簽名的方法示例
- C#和vb.net實現PDF 添加可視化和不可見數字簽名