通过Python设置及读取PDF属性,轻松管理PDF文档

PDF文档属性是嵌入在PDF文档中的一些与文档有关的信息,如作者、制作软件、标题、主题等。PDF属性分为默认属性和自定义属性两种,其中默认属性是一些固定的文档信息,部分信息自动生成(如文件大小、页数、页面大小等信息),其他信息则可以进行设置。设置这些文档属性可以帮助文档阅读者快速地掌握文档的主要内容以及关键信息,同时方便对文档进行整理归纳。本文将介绍如何使用Python通过简单的操作设置PDF文档属性

  • 设置PDF文档默认属性和自定义属性
  • 获取PDF文档默认属性和自定义属性

本文所使用的方法需要用到Spire.PDF for Python,一个PDF文档处理API,可通过官网获取或通过PyPI安装:

powershell 复制代码
pip install Spire.PDF

设置PDF文档默认属性和自定义属性

使用 PdfDocument.DocumentInformation 属性可以获取PDF文档的属性信息(PdfDocumentInformation对象),接着使用 PdfDocumentInformation 类下的属性以及PdfDocumentInformation.SetCustomProperty() 方法可对PDF文档的默认属性和自定义属性进行设置。下面是示例:

  1. 创建 PdfDocument 对象并使用 PdfDocument.LoadFromFile() 方法加载PDF文档。
  2. 通过 PdfDocument.DocumentInformation 属性获取该PDF文档的属性。
  3. 通过 PdfDocumentInformation 下的属性设置PDF默认属性。
  4. 使用 PdfDocumentInformation.SetCustomProperty() 方法设置PDF自定义属性。
  5. 使用 PdfDocument.SaveToFile() 方法保存PDF文档。

代码示例
Python

python 复制代码
from spire.pdf import *
from spire.pdf.common import *

# 创建PdfDocument对象并载入PDF文档
pdf = PdfDocument()
pdf.LoadFromFile("示例.pdf")

# 获取PDF文档属性
properties = pdf.DocumentInformation

# 设置PDF默认属性
properties.Author = "乔林"
properties.Creator = "PDF制作器"
properties.Keywords = "数据库;云数据库"
properties.Subject = "云数据库及其优势介绍"
properties.Title = "云数据库的力量:强化数字化企业"
properties.Producer = "PDF制作器 1.3"

# 设置PDF自定义属性
properties.SetCustomProperty("公司", "科技有限公司")
properties.SetCustomProperty("标签", "数据服务,数据储存,云数据库")

# 保存PDF文档
pdf.SaveToFile("PDF属性.pdf")
pdf.Close()

设置效果

获取PDF文档默认属性和自定义属性

获取PDF文档属性也可以通过类似的操作。在获取PDF文档属性信息后,直接通过 PdfDocumentInformation 类下的属性获取指定的默认属性内容,自定义属性内容则可以通过 PdfDocumentInformation.GetCustomProperty() 方法获取。下面是示例:

  1. 创建 PdfDocument 对象并使用 PdfDocument.LoadFromFile() 方法加载PDF文档。
  2. 通过 PdfDocument.DocumentInformation 属性获取该PDF文档的属性。
  3. 通过 PdfDocumentInformation 类下的属性获取特定属性。
  4. 使用 PdfDocumentInformation.GetCustomProperty() 方法获取特定的自定义属性。
  5. 输出属性内容。

代码示例
Python

python 复制代码
from spire.pdf import *
from spire.pdf.common import *

# 创建PdfDocument对象并载入PDF文档
pdf = PdfDocument()
pdf.LoadFromFile("PDF属性.pdf")

# 获取PDF文档属性
properties = pdf.DocumentInformation

# 创建字符串
information = ""

# 获取默认属性
information += "作者: " + properties.Author
information += "\n标题: " + properties.Title
information += "\n主题: " + properties.Subject
information += "\n关键字: " + properties.Keywords
information += "\n应用程序: " + properties.Creator
information += "\nPDF 制作程序: " + properties.Producer

# 获取自定义属性
information += "\n公司: " + properties.GetCustomProperty("公司")
information += "\n标签: " + properties.GetCustomProperty("标签")

# 输出文档属性
print(information)
pdf.Close()

输出结果

以上内容介绍了如何使用Python设置和获取PDF文档的默认属性和自定义属性,帮助文档管理及文档识别。Spire.PDF for Python还支持许多其他功能,前往Spire.PDF for Python教程查看更多内容。

相关推荐
IT小盘6 小时前
03-大模型API不只是发送Prompt-流式输出超时重试与异常处理
人工智能·python·prompt
Zzz不能停8 小时前
个人博客系统系统---测试报告【笔耕云】
python·功能测试·自动化·压力测试
小Ti客栈8 小时前
Spring Boot 集成 Springdoc-OpenAPI 与 Knife4j实现接口文档与可视化调试
java·spring boot·后端
互联网中的一颗神经元9 小时前
小白python入门 - 39. 采集流水线小项目
开发语言·python
Wang's Blog9 小时前
Go-Zero 项目开发22:用户群聊功能的实现与完善
开发语言·golang
Ai拆代码的曹操9 小时前
Spring 事务 REQUIRES_NEW 嵌套调用:连接池翻倍的秘密
java·后端·spring
a1117769 小时前
坦克大战3D Three.js 3D (开源项目)
开发语言·javascript·3d
郭老二9 小时前
【Python】常用模块:xmlrpc
python
动恰客流统计10 小时前
ReID边缘计算视觉统计:餐饮店客流增长的数字化破局路径
java·大数据·运维·人工智能
名字还没想好☜10 小时前
Python itertools 实战:用 groupby、chain、islice 优雅处理大数据流
linux·windows·python·迭代器·itertools