<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
安裝的方式很常規,直接使用pip安裝就行了。
pip install fpdf
將需要使用的三方模組匯入進來
from fpdf import FPDF # PDF檔案物件操作庫 import os # 檔案路徑操作庫
初始化PDF檔案物件
PDF = FPDF()
關閉自動分頁
PDF.set_auto_page_break(0)
設定需要轉換的批次圖片路徑
path = r'C:/imgs'
遍歷圖片到陣列
images = [i for i in os.listdir(path)]
設定多少張圖片在PDF中佔一頁
NUM = int(input('引數設定: 請輸入多少張圖片佔用一頁: n'))
設定圖片的寬度和高度
width = int(input('引數設定: 請輸入每張圖片的寬度: n')) height = int(input('引數設定: 請輸入每張圖片的高度: n'))
遍歷圖片並向檔案中新增圖片
for index, image in enumerate(images): if index == 0: PDF.add_page() elif index % NUM == 0: PDF.add_page() PDF.image(os.path.join(path, image), w=width, h=height)
儲存PDF檔案
PDF.output(os.path.join(path, "圖片檔案.pdf"), "F") print('圖片到PDF轉換完成!')
實現效果圖
補充
當然Python還能實現多張圖片合併轉PDF格式
下面是實現的範例程式碼
from PIL import Image import os import img2pdf flag = False while not flag: dirname = input("請輸入圖片資料夾所在路徑(例如d:/wlzcool):") flag = os.path.exists(dirname) if not flag: print("圖片資料夾所在路徑不存在!") saveflag = False while not saveflag: savedirname = input("請輸入目標圖片資料夾所在路徑(例如d:/wlzcool2):") saveflag = os.path.exists(savedirname) if not saveflag: print("圖片資料夾所在路徑不存在!") automakedir = input("是否自動建立對應資料夾?(是Y/否N):") if automakedir.strip().upper() == "Y": os.makedirs(savedirname) saveflag = True files = os.listdir(dirname) reductionFactor = int(input("請輸入長寬壓縮比(例如3):")) if reductionFactor <= 0: reductionFactor = 3 isConvertBlack = input("是否輸出黑白版本?(是Y/否N):").strip().upper() == "Y" for fname in files: if not fname.endswith(".jpg"): continue path = os.path.join(dirname, fname) savePath = os.path.join(savedirname, fname) if os.path.isdir(path): continue img = Image.open(path) if img.size[0] > img.size[1]: im_rotate = img.rotate(90, expand=True) size = (int(im_rotate.size[0] / reductionFactor), int(im_rotate.size[1] / reductionFactor)) im_rotate = im_rotate.resize(size) if isConvertBlack: im_rotate = im_rotate.convert("L") im_rotate.save(savePath, quality=95) else: size = (int(img.size[0] / reductionFactor), int(img.size[1] / reductionFactor)) img = img.resize(size) if isConvertBlack: img = img.convert("L") img.save(savePath, quality=95) filename = input("請輸入輸出檔名(例如:第一章):") with open(filename + ".pdf", "wb") as f: imgs = [] files = os.listdir(savedirname) for fname in files: if not fname.endswith(".jpg"): continue path = os.path.join(savedirname, fname) if os.path.isdir(path): continue imgs.append(path) f.write(img2pdf.convert(imgs))
到此這篇關於Python自動化辦公之圖片轉PDF的實現的文章就介紹到這了,更多相關Python圖片轉PDF內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45