Java 添加、替换、删除PDF中的图片的示例代码
作者:E-iceblue 时间:2023-08-28 09:06:26
概述
本文介绍通过java程序向PDF文档添加图片,以及替换和删除PDF中已有的图片。另外,关于图片的操作还可参考设置PDF 图片背景、设置PDF图片水印、读取PDF中的图片、将PDF保存为图片等文章。
工具:Free Spire.PDF for Java (免费版)
Jar获取及导入:官网下载,并解压将lib文件夹下的jar文件导入java程序,或者通过maven仓库下载并导入。
jar导入效果:
Java代码示例
【示例1】添加图片到PDF
import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
public class AddImage {
public static void main(String[] args) {
//创建文档
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) {
//创建PdfDocument对象
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();
}
}
图片删除效果:
总结
以上所述是小编给大家介绍的Java 添加、替换、删除PDF中的图片的示例代码网站的支持!
来源:https://www.cnblogs.com/Yesi/archive/2020/02/14/12307458.html
标签:java,添加,替换,删除,PDF,图片
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Java中的强引用,软引用,弱引用,虚引用的作用介绍
2023-08-27 11:03:28
![](https://img.aspxhome.com/file/2023/1/58411_0s.png)
Java基础将Bean属性值放入Map中的实例
2023-10-11 13:57:40
Mybatis-Plus查询中如何排除标识字段
2023-11-23 20:38:46
![](https://img.aspxhome.com/file/2023/5/64555_0s.png)
C#检查foreach判读是否为null的方法
2021-10-28 01:37:24
![](https://img.aspxhome.com/file/2023/3/78143_0s.png)
Android studio保存logcat日志到本地的操作
2022-04-03 23:31:03
MyBatis控制台显示SQL语句的方法实现
2021-10-18 04:10:00
![](https://img.aspxhome.com/file/2023/4/99864_0s.png)
Java代理深入讲解之静态代理
2022-10-25 14:56:12
![](https://img.aspxhome.com/file/2023/6/122016_0s.png)
Java基于Tcp协议的socket编程实例
2022-03-08 00:04:13
详解C#编程获取资源文件中图片的方法
2023-06-17 23:58:51
C语言近万字为你讲透树与二叉树
2022-04-30 17:48:19
![](https://img.aspxhome.com/file/2023/7/120787_0s.png)
Android简单实现文件下载
2023-08-28 06:33:17
Maven依赖管理的用法介绍
2021-07-13 18:07:35
![](https://img.aspxhome.com/file/2023/0/122340_0s.png)
Android使用ContentResolver搜索手机通讯录的方法
2021-12-28 08:33:16
关于mybatis使用${}时sql注入的问题
2023-04-18 03:29:40
![](https://img.aspxhome.com/file/2023/3/66683_0s.png)
详解Java中的数组与字符串相关知识
2023-02-10 03:31:10
java判断用户输入的是否至少含有N位小数的实例
2021-06-01 02:56:42
使用Spring Security OAuth2实现单点登录
2023-08-13 01:44:34
Java之Mybatis多层嵌套查询方式
2023-06-17 11:48:52
![](https://img.aspxhome.com/file/2023/7/71857_0s.png)
C# WinForm创建Excel文件的实例
2023-08-06 19:47:06
git版本回退_动力节点Java学院整理
2022-06-21 13:26:10
![](https://img.aspxhome.com/file/2023/4/112064_0s.png)