当前位置: 首页 > news >正文

java读取设置pdf属性信息

pom

<dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.24</version>
</dependency>

读取属性

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDDocumentInformation;import java.io.File;
import java.io.IOException;public class ReadPDFProperties {public static void main(String[] args) {try {// 加载PDF文件File file = new File("example.pdf");PDDocument document = PDDocument.load(file);// 获取PDF文档信息PDDocumentInformation info = document.getDocumentInformation();// 读取属性String title = info.getTitle();String author = info.getAuthor();String subject = info.getSubject();String keywords = info.getKeywords();String creator = info.getCreator();String producer = info.getProducer();String creationDate = info.getCreationDate().toString();String modificationDate = info.getModificationDate().toString();String trapped = info.getTrapped();// 输出属性信息System.out.println("Title: " + title);System.out.println("Author: " + author);System.out.println("Subject: " + subject);System.out.println("Keywords: " + keywords);System.out.println("Creator: " + creator);System.out.println("Producer: " + producer);System.out.println("Creation Date: " + creationDate);System.out.println("Modification Date: " + modificationDate);System.out.println("Trapped: " + trapped);// 关闭文档document.close();} catch (IOException e) {e.printStackTrace();}}
}

设置属性

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDDocumentInformation;import java.io.File;
import java.io.IOException;public class PDFPropertiesExample {public static void main(String[] args) {try (PDDocument document = PDDocument.load(new File("example.pdf"))) {PDDocumentInformation info = document.getDocumentInformation();// 设置文档属性info.setAuthor("作者姓名");info.setTitle("文档标题");info.setSubject("文档主题");// 可以设置更多属性,例如:// info.setKeywords("关键词1, 关键词2");// info.setCreator("创建者应用名");// info.setProducer("生产者应用名");// 保存属性document.setDocumentInformation(info);// 保存更改后的文档document.save("updated_example.pdf");} catch (IOException e) {e.printStackTrace();}}
}
http://www.lryc.cn/news/526457.html

相关文章:

  • C语言内存管理详解
  • mysql从全备文件中提取单库或单表进行恢复——筑梦之路
  • HTML-新浪新闻-实现标题-排版
  • 【前沿聚焦】机器学习的未来版图:从自动化到隐私保护的技术突破
  • 二叉树的最大深度(C语言详解版)
  • 基于dlib/face recognition人脸识别推拉流实现
  • 【kong gateway】5分钟快速上手kong gateway
  • webrtc入门系列(五)amazon-kinesis-video-streams-webrtc-sdk-c编译
  • 通过亚马逊云科技Bedrock打造自定义AI智能体Agent(上)
  • 【Nacos】负载均衡
  • 小智 AI 聊天机器人
  • HTML一般标签和自闭合标签介绍
  • 怎么用u盘怎么重装系统_用u盘重装系统详细图文教程【新手教程】
  • 记录一次k8s起不来的排查过程
  • 代码练习2
  • 2.1.3 第一个工程,点灯!
  • Qt Designer and Python: Build Your GUI
  • 蓝桥杯LQ1044 求完数
  • 消息队列篇--通信协议篇--TCP和UDP(3次握手和4次挥手,与Socket和webSocket的概念区别等)
  • YOLOv9改进,YOLOv9检测头融合ASFF(自适应空间特征融合),全网首发
  • Elastic Agent 对 Kafka 的新输出:数据收集和流式传输的无限可能性
  • 论文速读|Is Cosine-Similarity of Embeddings Really About Similarity?WWW24
  • Midjourney中的强变化、弱变化、局部重绘的本质区别以及其有多逆天的功能
  • 基于 Node.js 的天气查询系统实现(附源码)
  • 时序数据库的使用场景
  • 计算机的错误计算(二百二十二)
  • ThinkPHP 8模型与数据的插入、更新、删除
  • c语言函数(详解)
  • 为AI聊天工具添加一个知识系统 之70 详细设计 之11 维度运动控制的应用:上下文受控的自然语言
  • ios打包:uuid与udid