多个png合并pdf

from fpdf import FPDF
from PIL import Image
import os


def makePdf(pdfFileName, listPages):
    # png size
	cover = Image.open(listPages[0])
	width, height = cover.size

    # creat a blank pdf file
	pdf = FPDF(unit = "pt", format = [width, height])
 
    # add png one by one 
	for page in listPages:
		pdf.add_page()
		pdf.image(page, 0, 0)

	pdf.output(pdfFileName, "F")


if __name__=="__main__":
	pngNum_for_onePDF = 4
	pngFileName = 'PNG'
	pdfFileName = 'PDF'
	if not os.path.exists(pdfFileName):
		os.makedirs(pdfFileName)
	
    pngFileList = os.listdir(pngFileName)
	total_num = len(pngFileList)
	iteration = int(total_num/pngNum_for_onePDF)
	for i in range(iteration):
		makePdf(pdfFileName + '/' + str(i)  + ".pdf", [pngFileName + '/' + pngFileList[j] for j in range(pngNum_for_onePDF*i, pngNum_for_onePDF*(i+1))])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值