在PDF中添加附件,可分两种情况,一种是直接把文档作为附件插入到PDF,一种是注释附件,即将文档通过注释的形式插入到PDF页面中的指定位置,通过点击注释,即可打开注释中的附件文档。同样的,在我们删除PDF中的附件时,也可以从这两种情况来考虑,选择相应的删除方法。下面,将通过Java编程来演示如何从以上两种情况来删除PDF附件。
使用工具:
•Free Spire.PDF for Java (免费版)
•IntelliJ IDEA
Jar文件获取及导入:
方法1:可通过官网下载jar文件包。下载后,解压文件,并将lib文件夹下的Spire.Pdf.jar文件导入到java程序。参考如下导入效果:
方法2:可通过maven仓库安装导入。
Java代码示例:
import com.spire.pdf.*;
import com.spire.pdf.annotations.PdfAnnotation;
import com.spire.pdf.annotations.PdfAnnotationCollection;
import com.spire.pdf.annotations.PdfAttachmentAnnotationWidget;
import com.spire.pdf.attachments.PdfAttachmentCollection;
public class DeleteAttachments {
public static void main(String[]args){
//加载包含附件的PDF文档
PdfDocument pdf = new PdfDocument();
pdf.loadFromFile("sample.pdf");
//删除文档附件
//获取PDF中的附件
PdfAttachmentCollection attachment = pdf.getAttachments();
//删除所有附件
attachment.clear();
//删除指定附件
//attachment.removeAt(0);
//删除注释附件
//遍历PDF所有页面
for(int i = 0;i<pdf.getPages().getCount();i++){
//获取页面中的所有注释集合
PdfAnnotationCollection pdfAnnotationCollection = pdf.getPages().get(i).getAnnotationsWidget();
//遍历注释集合中的对象
for ( Object annotation: pdfAnnotationCollection){
//判断对象是否为附件集合
if(annotation instanceof PdfAttachmentAnnotationWidget) {
//删除注释
pdfAnnotationCollection.remove((PdfAnnotation) annotation);
}
}
}
//保存文档
pdf.saveToFile("删除附件.pdf",FileFormat.PDF);
pdf.dispose();
}
}
附件删除效果:
- 大小: 37.9 KB
- 大小: 217.8 KB
分享到:
相关推荐
支持的功能如下: PDF 文档安全性设置,画文本、图片、形状、条形码到 PDF,提取 PDF 中的文本/图片,高亮/替换 PDF 文本,合并和拆分 PDF,创建和填充表单,添加页眉页脚到 PDF,添加或删除层,重叠 PDF 页面,添加...
Java 数组附件笔记 Java 数组是 Java programming language 中的一种基本数据类型,用于存储同类型的多个值。数组是一种引用数据类型,数组变量存储的是数组的内存地址,而不是数组的实际内容。 在 Java 中,数组...
支持的功能如下: PDF 文档安全性设置,画文本、图片、形状、条形码到 PDF,提取 PDF 中的文本/图片,高亮/替换 PDF 文本,合并和拆分 PDF,创建和填充表单,添加页眉页脚到 PDF,添加或删除层,重叠 PDF 页面,添加...
在Java开发中,有时我们需要将Word文档转换成PDF格式,以满足不同的应用场景或兼容性需求。本文将介绍如何使用Spire.Doc库进行转换,并解决其中的版权问题。 首先,为了在Java项目中使用Spire.Doc库,我们需要在...
PDF文件JAVA去水印源码PDFtk 服务器的自制公式 这是一个 PDF 工具包版本的公式。 注意! 此项目不再维护。 PDFtk 的作者尚未发布新的源代码分发版。 最新的源代码版本 (2.02) 不适用于 Mac OS X 10.11 (El Capitan) ...
Java REST API可在云端处理PDF 是真正的REST API,可让您执行各种文档处理操作,包括... 处理PDF附件,注释和表单字段。 对PDF文档应用加密或解密并设置密码。 从页面或整个PDF文档中删除所有图章和表格。 通过其ID
MLDN 李兴华 Java Web 开发实战经典.pdf (高清版) 全书分为两部分,需 要全部下载下载一起解压,此部分为第一部分 带有书签,清华大学出版社 第1章 JAVA WEB开发简介 1.1、WEB发展历程 1.2、企业开发架构 ...
- 可以上传图片和其他媒体文件作为文章附件。 - 提供搜索功能,便于查找特定文章。 #### 评论管理模块设计 - 用户可在文章下方发表评论,并查看其他用户的评论。 - 支持评论的删除和编辑功能。 - 管理员有权审核和...
Java文件上传、删除和下载是Web开发中常见的操作,尤其在使用Struts2框架时。以下是对这些功能的详细说明: ### 文件上传 在Java Web应用中,文件上传通常涉及前端HTML表单和后端Action类。在Struts2框架中,我们...
JavaMail API提供了IMAP和POP3等邮件协议的支持,使得开发者可以方便地在Java应用中集成邮件功能。 3. IMAP和POP3 IMAP(Internet Message Access Protocol)和POP3(Post Office Protocol)是邮件服务中常用的两个...
2. **Aspose.PDF**:此模块用于处理PDF文档,允许你创建新的PDF,读取和编辑现有PDF,合并PDF,添加水印,提取或删除页面,以及进行复杂的表单处理。 3. **Aspose.Cells**:这个组件专注于处理电子表格,支持Excel...
8. **附件处理**:轻松添加或提取邮件中的附件,支持多种文件格式,如.doc、.pdf、.jpg等。 9. **国际化与本地化**:Java Mail 支持多语言环境,可以根据用户的地区设置显示合适的字符集和日期格式。 10. **与其他...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
7.7、JavaBean的删除 7.8、实例操作:注册验证 7.9、DAO设计模式 7.9.1、DAO设计模式简介 7.9.2、DAO开发 7.9.3、JSP调用DAO 7.10、本章摘要 7.11、开发实战讲解(基于Oracle数据库) 第8章 文件上传 8.1、...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...