使用python實現(xiàn)壓縮PDF文件大小的方法
引言
壓縮 PDF 文件能有效減小文件大小并提高文件傳輸?shù)男剩瑫r還能節(jié)省計算機存儲空間。除了使用一些專業(yè)工具對PDF文件進行壓縮,我們還可以通過 Python 來執(zhí)行該操作,實現(xiàn)自動化、批量處理PDF文件。
本文將分享一個簡單有效的使用 Python 壓縮 PDF 文件的方法。需要用到 Spire.PDF for Python庫,可以通過pip命令安裝該庫。
pip install Spire.PDF
使用 Python 實現(xiàn)PDF 文件壓縮
Spire.PDF for Python 庫可以通過調(diào)整圖像質(zhì)量和壓縮嵌入字體來減小 PDF 文件的大小。 主要步驟及方法如下:
- 導入庫。
- 創(chuàng)建
PdfCompressor對象,并傳入需要壓縮的 PDF 文件。 - 獲取壓縮選項(
OptimizationOptions),并設置字體和圖片的壓縮。
壓縮字體:
• 啟用字體壓縮:SetIsCompressFonts(True)方法
• 或取消字體嵌入:SetIsUnembedFonts(True)方法
壓縮圖片:
• 設置圖片質(zhì)量:SetImageQuality(imageQuality: ImageQuality)方法(支持設置High/ Medium /Low)。
• 調(diào)整圖片大小:SetResizeImages(True)方法。
• 啟用圖片壓縮:SetIsCompressImage(True)方法。 - 調(diào)用
CompressToFile()方法,壓縮PDF文件并保存到指定路徑下。
Python 代碼:
from spire.pdf.common import *
from spire.pdf import *
# 創(chuàng)建PdfCompressor對象并傳入PDF文件
compressor = PdfCompressor("測試報告.pdf")
# 獲取OptimizationOptions對象
options = compressor.OptimizationOptions
# 壓縮字體
options.SetIsCompressFonts(True)
# 取消字體嵌入
# options.SetIsUnembedFonts(True)
# 設置圖片質(zhì)量
options.SetImageQuality(ImageQuality.Medium)
# 調(diào)整圖片大小
options.SetResizeImages(True)
# 壓縮圖片
options.SetIsCompressImage(True)
# 壓縮PDF文件并保存
compressor.CompressToFile("PDF壓縮.pdf")
Spire.PDF for Python 庫允許我們根據(jù)具體需要靈活調(diào)整壓縮選項。要實現(xiàn)最大限度地壓縮,我們可以將圖像質(zhì)量設置為Low。
其他方法:
pdf文件過大,經(jīng)常會是一個問題,但是市面上基本上都是收費的工具,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") # 需要壓縮后保存的文件路徑這個代碼使用非常簡單,主要是壓縮文件里面的圖片質(zhì)量,實際上圖片質(zhì)量差一些在閱讀器里面是看不出來的區(qū)別,效果如下:

文件直接小了10倍,打開看也不影響觀感,還是比較有意義的。
到此這篇關(guān)于使用python實現(xiàn)壓縮PDF文件大小的方法的文章就介紹到這了,更多相關(guān)python壓縮PDF大小內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python中內(nèi)置的日志模塊logging用法詳解
Python的logging模塊提供了記錄程序運行情況的日志功能,類似于Apache的log4j,很好很強大,這里我們就來看一下Python中內(nèi)置的日志模塊logging用法詳解2016-07-07
Python快速進修指南之向量數(shù)據(jù)庫文本搜索
這篇文章主要為大家介紹了Java開發(fā)快速進修Python指南之向量數(shù)據(jù)庫文本搜索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2024-01-01
在Python 3中緩存Exception對象會造成什么后果?
這篇文章主要介紹了在Python 3中緩存Exception對象到底會造成什么后果?下面帶著這個問題一起看看文章的解析,需要的朋友可以參考一下2021-12-12
python修改pip install默認安裝路徑的詳細步驟
pip安裝的第三方庫默認存放在C盤中,為了便于管理和不過度占用C盤空間所以想修改默認的pip路徑,文章通過圖文結(jié)合的方式給大家介紹的非常詳細,需要的朋友可以參考下2025-04-04

