日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python---PDF转JPG图片

發布時間:2023/12/9 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python---PDF转JPG图片 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python—PDF轉JPG圖片

三方庫安裝

需安裝pdf2image,配置poppler環境變量
參考:https://github.com/Belval/pdf2image

pdfimage 安裝

pip install pdf2image

poppler安裝

Linux

apt-get install poppler-utils

windows
下載 poppler: https://blog.alivate.com.au/poppler-windows/

方法一:設置環境變量PATH: D:\poppler-0.68.0_x86\poppler-0.68.0\bin 方法二:參數指定絕對路徑images = convert_from_path(pdf_path=pdf_file_path, poppler_path=r'D:\poppler-0.68.0_x86\poppler-0.68.0\bin')

Centos安裝pdf2image

環境:centos8、python3.6.4

庫安裝
1、pip3 install poppler-utils
2、pip3 install pdf2image
3、yum install poppler
4、yum install poppler-utils

PDF轉換圖片為空的問題

若轉換得到的圖片為空白頁,說明PDF在轉換過程中遇到了未能識別的字體,需補充系統中的字體庫。
參考博客:
1、Linux 安裝字體庫
2、linux ttf,Linux篇:linux安裝字體

簡易版

import osfrom pdf2image import convert_from_pathdef pdf_to_jpg(pdf_path, jpg_save_path, one_page=False):"""將PDF文件轉換為JPG圖片:param pdf_path: PDF文件路徑:param jpg_save_path: JPG圖片保存路徑, 若one_page為False,輸入一個文件夾路徑保存所有JPG圖片:param one_page: True:返回 PDF首頁的JPG;False:返回 PDF所有頁的JPG:return:"""pages = convert_from_path(pdf_path, 200) # 若pdf有多頁,則返回一個列表if one_page:pages[0].save(jpg_save_path, 'JPEG')else:if not os.path.exists(jpg_save_path):os.mkdir(jpg_save_path) # 創建文件夾for i, page in enumerate(pages):page.save(jpg_save_path + str(i+1) + '.jpg', 'JPEG')if __name__ == "__main__":pdf_path = "../data/pdfdemo.pdf"# 保存第一張圖片# jpg_save_path = "../data/pdfimg.jpg"# one_page = True# pdf_to_jpg(pdf_path, jpg_save_path, one_page)# 將每頁圖片都保存jpg_save_path = "../data/pdfimg/"one_page = Falsepdf_to_jpg(pdf_path, jpg_save_path, one_page)

整合

import osfrom pdf2image import convert_from_pathclass IMGConverter:def __init__(self, dir_path, save_dir_path):self.dir_path = dir_path # 保存pdf文件的文件夾路徑self._export_folder = save_dir_path # 保存圖片的文件夾路徑self._filename_list = list() # 保存pdf文件名if not os.path.exists(self._export_folder):os.mkdir(self._export_folder)# print(self._export_folder)self._enumerate_filename()def _enumerate_filename(self):"""讀取所有文件名"""for name in os.listdir(self.dir_path):if self.is_legal_postfix(name):self._filename_list.append(name)else:continue# 檢查文件名是否合法def is_legal_postfix(self, filename):return filename.split('.')[-1].lower() == 'pdf' and not os.path.basename(filename).startswith('~')def run_conver(self):"""批量處理轉換操作,將一個文件夾下的pdf文件皆轉換為jpg圖片"""print('需要轉換的文件數:', len(self._filename_list))for filename in self._filename_list:print('原文件:', filename)self.pdf2img(filename, self._export_folder)print('轉換完成!')def pdf2img(self, pdf_name, img_save_dir):"""將pdf文件轉為jpg格式圖片,若pdf有多頁,則返回多張圖片pdf_path:pdf文件路徑img_path:轉換后的圖片存放路徑"""pages = convert_from_path(self.dir_path + '/' + pdf_name, 200)for i, page in enumerate(pages):page.save(img_save_dir + '/' + pdf_name[:-4] + '-' + str(i) + '.jpg', 'JPEG')if __name__ == "__main__":dir_path = r'C:\Users\Dell\Desktop\recog'save_dir_path = r'C:\Users\Dell\Desktop\img123'ob = IMGConverter(dir_path, save_dir_path)ob.run_conver()

總結

以上是生活随笔為你收集整理的Python---PDF转JPG图片的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。