Java 添加、替换、删除PDF中的图片
概述
本文介绍通过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中的图片的更多相关文章
- Java 添加、提取PDF中的图片
Spire.Cloud.SDK for Java提供了PdfImagesApi接口可用于添加图片到PDF文档addImage().提取PDF中的图片extractImages(),具体操作步骤和Jav ...
- Java 添加、删除、格式化Word中的图片
本文介绍使用Spire.Cloud.SDK for Java提供的ImagesApi接口来操作Word中的图片.具体可通过addImage()方法添加图片.deleteImage()方法删除图片.up ...
- java 用PDFBox 删除 PDF文件中的某一页
依赖: <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox-app ...
- Java添加条形码到PDF表格
条码的应用已深入生活和工作的方方面面.在处理条码时,常需要和各种文档格式相结合.当需要在文档中插入.编辑或者删除条码时,可借助于一些专业的类库工具来实现.本文,以操作PDF文件为例,介绍如何在编辑表格 ...
- 替换res\drawable中的图片
现象 在android开发中,经常会需要替换res\drawable中的图片,打开res\layout下的文件预览布局页面发现图片已经被替换,但在模拟器或者真实机器上运行时发现该图片并没有被替换,还是 ...
- 采用 ITextPDF 类库测试向 PDF 中加入图片的示例
package com.smbea.image; import com.artup.util.image.ImageUtil; import com.itextpdf.text.*; import c ...
- 对pdf中的图片进行自动识别
对pdf中的图片进行自动识别 商务合作,科技咨询,版权转让:向日葵,135—4855__4328,xiexiaokui#qq.com 原理:增强扫描 效果:自动识别所有图片中的文字,可以选择.复制,进 ...
- Java 添加、删除、替换、格式化Word中的文本(基于Spire.Cloud.SDK for Java)
Spire.Cloud.SDK for Java提供了TextRangesApi接口可通过addTextRange()添加文本.deleteTextRange()删除文本.updateTextRang ...
- 利用百度AI OCR图片识别,Java实现PDF中的图片转换成文字
序言:我们在读一些PDF版书籍的时候,如果PDF中不是图片,做起读书笔记的还好:如果PDF中的是图片的话,根本无法编辑,做起笔记来,还是很痛苦的.我是遇到过了.我们搞技术的,当然得自己学着解决现在的痛 ...
随机推荐
- 「Luogu P3183」[HAOI2016]食物链 解题报告
身为一个蒟蒻,由于刷不过[NOI2001]食物链 于是出门左转写了道另一道假的食物链 戳这里 这里的食物链个条数其实就是有向图的路径数(应该是这么说吧,我弱) 思路: 拓扑(Topulogy)(一本正 ...
- Sorted 内置函数的排序使用
Sorted 内置函数的排序使用 Sorted 排序列表 1.倒序对列表进行排序 # 对列表进行降序序排序 list = [1,3,4,23,6,7] list = sorted(list,rever ...
- 变量内容的删除、取代与替换(optional)
这部分内容非常繁琐且不易记忆且枯燥,用到来查询即可. 1.变量内容的删除 这一部分比较细枝末节,就不再一一手打了,贴范例图片 #:符合取代文字的最短的一个 ##:符合取代文字的最长的一个 2.变量内容 ...
- vue传值(父子传值,非父子传值)
vue组件传值,分为父子传值和非父子传值,父子传值又分为父传子和子传父. 组件之间的传值,实现了数据的联动,是从操作Dom到操作数据一个跳转性的突破,在学习vue双向绑定原理之后, 这种观念就应该继续 ...
- cogs 173. 词链 字典树模板
173. 词链 ★★☆ 输入文件:link.in 输出文件:link.out 简单对比时间限制:1 s 内存限制:128 MB [问题描述]给定一个仅包含小写字母的英文单词表,其中每个 ...
- hdu 6567 Cotree 树的重心
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6567 #include<iostream> #include<algorithm&g ...
- <密码学系列>—信息安全威胁
懒惰等于将一个人活埋.--泰勒 本文已经收录至我的GitHub,欢迎大家踊跃star 和 issues. https://github.com/midou-tech/articles 点关注,不迷路! ...
- java intellij 工具的简单用法
一.目录结构 1.新建项目(Empty Project) -> 新建module(可以有多个) => 出来src文件夹 -> 在src文件夹中新建package -> 在pa ...
- Django 数据库连接缓存的坑
https://www.cnblogs.com/xcsg/p/11446990.html
- 【WPF学习】第十三章 理解路由事件
每个.NET开发人员都熟悉“事件”的思想——当有意义的事情发生时,由对象(如WPF元素)发送的用于通知代码的消息.WPF通过事件路由(event routing)的概念增强了.NET事件模型.事件路由 ...