使用python实现压缩PDF文件大小的方法

 更新时间:2024年06月19日 11:19:25   作者:Eiceblue  
压缩 PDF 文件能有效减小文件大小并提高文件传输的效率,同时还能节省计算机存储空间,除了使用一些专业工具对PDF文件进行压缩,我们还可以通过 Python 来执行该操作,本文将分享一个简单有效的使用 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。

其他方法:

pdf文件过大,经常会是一个问题,但是市面上基本上都是收费的工具,wps需要开会员才能使用。因此找了一个python库进行试验:

首先需要安装

pip install aspose-pdf

运行的代码:

import aspose.pdf as ap
 
compressPdfDocument = ap.Document("SnapFusion.pdf")  # 需要压缩的pdf文件路径
pdfoptimizeOptions = ap.optimization.OptimizationOptions()
pdfoptimizeOptions.image_compression_options.compress_images = True
pdfoptimizeOptions.image_compression_options.image_quality = 10
compressPdfDocument.optimize_resources(pdfoptimizeOptions)
compressPdfDocument.save("SnapFusion_compress.pdf")  # 需要压缩后保存的文件路径

这个代码使用非常简单,主要是压缩文件里面的图片质量,实际上图片质量差一些在阅读器里面是看不出来的区别,效果如下:

文件直接小了10倍,打开看也不影响观感,还是比较有意义的。

到此这篇关于使用python实现压缩PDF文件大小的方法的文章就介绍到这了,更多相关python压缩PDF大小内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于Python自动化操作Excel

    关于Python自动化操作Excel

    这篇文章主要介绍了关于Python自动化操作Excel, Python 是一种功能强大的编程语言,可以用于许多任务,包括处理 Excel 文件,需要的朋友可以参考下
    2023-04-04
  • Python Gitlab Api 使用方法

    Python Gitlab Api 使用方法

    今天小编就为大家分享一篇Python Gitlab Api 使用方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Python操作Word页眉页脚的完整指南

    Python操作Word页眉页脚的完整指南

    本文介绍了使用Python操作Word文档中页眉页脚的方法,包括安装python-docx库、操作节、添加内容、调整格式、保存文档等技巧,最后通过实际案例展示了Python在处理大量文档时的高效性,需要的朋友可以参考下
    2026-04-04
  • Python实现支持持久化的单例装饰器

    Python实现支持持久化的单例装饰器

    本文介绍了一个支持持久化的单例装饰器single,核心特点在于兼容三种装饰语法,支持JSON文件恢复实例等内容,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下
    2026-06-06
  • python基础之局部变量和全局变量

    python基础之局部变量和全局变量

    这篇文章主要介绍了python局部变量和全局变量,实例分析了Python中返回一个返回值与多个返回值的方法,需要的朋友可以参考下
    2021-10-10
  • 基于Python + wxPython开发一个本地工作日志管理工具

    基于Python + wxPython开发一个本地工作日志管理工具

    日常办公中,工作日志往往具有明显的重复性,本文介绍了一个基于Python和wxPython开发的桌面工作日志程序,主要解决日常办公日志记录中重复性内容多、手动输入繁琐的问题,感兴趣的小伙伴可以了解下
    2026-06-06
  • python爬虫(入门教程、视频教程)

    python爬虫(入门教程、视频教程)

    本文是一篇关于python爬虫的知识学习教程,并且给大家解答了学习了python爬虫怎么挣钱这个很多程序员疑惑的问题,如果你对这方面的知识也感兴趣,一起深入学习一下吧。
    2018-01-01
  • Django生成数据库及添加用户报错解决方案

    Django生成数据库及添加用户报错解决方案

    这篇文章主要介绍了Django生成数据库及添加用户报错解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • Python中定时任务APScheduler框架使用教程

    Python中定时任务APScheduler框架使用教程

    在 Python 开发中,定时任务是刚需场景,而APScheduler又是Python生态中最通用的定时任务框架,具有轻量、易用、功能全面的特点,下面小编就和大家详细讲讲它的具体应用吧
    2026-08-08
  • Python日志:自定义输出字段 json格式输出方式

    Python日志:自定义输出字段 json格式输出方式

    这篇文章主要介绍了Python日志:自定义输出字段 json格式输出方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04

最新评论