Python 压缩PDF减小文件大小
压缩 PDF 文件能有效减小文件大小并提高文件传输的效率,同时还能节省计算机存储空间。除了使用一些专业工具对PDF文件进行压缩,我们还可以通过 Python 来执行该操作,实现自动化、批量处理PDF文件。
本文将分享一个简单有效的使用 Python 压缩 PDF 文件的方法。需要用到 Spire.PDF for Python 库,可以通过pip命令安装该库。
pip install Spire.PDF
使用 Python 实现PDF 文件压缩
Spire.PDF for Python 库可以通过调整图像质量和压缩嵌入字体来减小 PDF 文件的大小。 主要步骤及方法如下:
1. 导入库。
2. 创建 PdfCompressor 对象,并传入需要压缩的 PDF 文件。
3. 获取压缩选项(OptimizationOptions),并设置字体和图片的压缩。
压缩字体:
• 启用字体压缩:SetIsCompressFonts(True) 方法
• 或取消字体嵌入:SetIsUnembedFonts(True) 方法
压缩图片:
• 设置图片质量:SetImageQuality(imageQuality: ImageQuality) 方法(支持设置High/ Medium /Low)。
• 调整图片大小:SetResizeImages(True) 方法。
• 启用图片压缩:SetIsCompressImage(True) 方法。
4. 调用 CompressToFile() 方法,压缩PDF文件并保存到指定路径下。
Python 代码:
from spire.pdf.common import *
from spire.pdf import * # 创建PdfCompressor对象并传入PDF文件
compressor = PdfCompressor("测试报告.pdf") # 获取OptimizationOptions对象
options = compressor.OptimizationOptions # 压缩字体
options.SetIsCompressFonts(True)
# 取消字体嵌入
# options.SetIsUnembedFonts(True) # 设置图片质量
options.SetImageQuality(ImageQuality.Medium)
# 调整图片大小
options.SetResizeImages(True)
# 压缩图片
options.SetIsCompressImage(True) # 压缩PDF文件并保存
compressor.CompressToFile("PDF压缩.pdf")
Spire.PDF for Python 库允许我们根据具体需要灵活调整压缩选项。要实现最大限度地压缩,我们可以将图像质量设置为Low。有问题可前往论坛讨论。
申请试用授权完整测试:https://www.e-iceblue.cn/misc/temporary-license.html
Python 压缩PDF减小文件大小的更多相关文章
- python压缩pdf(指定缩放比例)
python压缩pdf(指定缩放比例) 原理 pdf文件处理使用https://pymupdf.readthedocs.io/en/latest/index.html库可以轻松实现,该库的官方说明文档 ...
- python程序设计PDF高清完整版免费下载|百度云盘
百度云盘:python程序设计PDF高清完整版免费下载 提取码:bvsz Python 程序设计基础难易程度适中.除Python应用开发基础知识之外,还适当介绍了Python标准库以及内置对象的工作原 ...
- Python绘制PDF文件~超简单的小程序
Python绘制PDF文件 项目简介 这次项目很简单,本次项目课,代码不超过40行,主要是使用 urllib和reportlab模块,来生成一个pdf文件. reportlab官方文档 http:// ...
- 压缩Sqlite数据文件大小,解决数据删除后占用空间不变的问题
最近有一网站使用Sqlite数据库作为数据临时性的缓存,对多片区进行划分 Sqlite数据库文件,每天大概新增近1万的数据量,起初效率有明显的提高,但历经一个多月后数据库文件从几K也上升到了近160M ...
- 压缩html 减小存储空间
压缩html 减小存储空间 方法一.php代码,清除换行符,清除制表符,去掉注释标记 /** * 压缩html : 清除换行符,清除制表符,去掉注释标记 * @param $string * @ret ...
- python制作pdf电子书
python制作pdf电子书 准备 制作电子书使用的是python的pdfkit这个库,pdfkit是 wkhtmltopdf 的Python封装包,因此在安装这个之前要安装wkhtmltopdf 安 ...
- Python压缩指定文件及文件夹为zip
Python压缩指定的文件及文件夹为.zip 代码: def zipDir(dirpath,outFullName): """ 压缩指定文件夹 :param dirpat ...
- Python处理PDF和Word文档常用的方法
Python处理PDF和Word文档的模块是PyPDF2,使用之前需要先导入. 打开一个PDF文档的操作顺序是:用open()函数打开文件并用一个变量来接收,然后把变量给传递给PdfFileReade ...
- 【Python】使用Python压缩文件/文件夹
[Python压缩文件夹]导入“zipfile”模块 def zip_ya(startdir,file_news): startdir = ".\\123" #要压缩的文件夹路径 ...
- Python压缩文件/文件夹
[Python压缩文件夹]导入“zipfile”模块 def zip_ya(startdir,file_news): startdir = ".\\123" #要压缩的文件夹路径 ...
随机推荐
- vue使用websoket(非封装)
上代码: create:function(){ this.initWebpack() } methods:{ initWebpack(){//初始化websocket let us ...
- laravel-cms学习笔记
学习地址: https://www.houdunren.com/edu/video/12045 laravel 文档地址: https://gitee.com/houdunren/code/blob/ ...
- FileInputStream和FileOutputStream
FileInputstream 字节输入流 用于文件内容的读取操作. 创建FileInputstream对象用于读取文件内容,使用后需要进行关闭操作 常用方法: read(); //每次仅读取一个字节 ...
- fastposter v2.7.1 紧急发布 电商海报编辑器
fastposter v2.7.1 紧急发布 电商海报编辑器 fastposter海报生成器,电商海报编辑器,电商海报设计器,fast快速生成海报 海报制作 海报开发.二维码海报,图片海报,分享海报, ...
- 《最新出炉》系列入门篇-Python+Playwright自动化测试-46-鼠标滚轮操作
1.简介 有些网站为了节省流量和资源,提高加载效率,采用的是动态加载(懒加载)的,也就是当拖动页面右侧滚动条后会自动加载网页下面的内容,不拖动就不会加载的或者通过鼠标滚轮操作. 2.wheel模拟鼠标 ...
- WPF使用Shape实现复杂线条动画
看到巧用 CSS/SVG 实现复杂线条光效动画的文章,便也想尝试用WPF的Shape配合动画实现同样的效果.ChokCoco大佬的文章中介绍了基于SVG的线条动画效果和通过角向渐变配合 MASK 实现 ...
- linux常见的网络操作命令
1 linux在某个网卡上面添加一条明细路由命令如下 命令的意思是在这台服务器上面添加一条网段为192.168.1.0/24,网关为192.168.2.1,通过eth0这个网卡口出去 ip rout ...
- 【C#】初次使用webapi的体会
webapi controller 要继承 ApiController 重写权限验证 ,记得使用 System.Web.Http下的AuthorizeAttribute. webapi默认路由 ...
- Android 13 - Media框架(14)- OpenMax(二)
关注公众号免费阅读全文,进入音视频开发技术分享群! 这一节我们将来解析 media.codec 这个 HIDL service 究竟提供了什么服务,服务是如何启动的. 1.main 函数 我们先来看 ...
- .net core 5,6,7【多线程笔记】取消令牌(CancellationToken) CancellationTokenSource
介绍 在使用C#异步的场景,多多少少会接触到CancellationTokenSource.它和取消异步任务相关的,CancellationToken就是它生产出来的. 演示 任务取消执行回调 var ...