python 图片转pdf_python 将文件夹内的图片转换成PDF

import os

import string

from PIL import Image

from reportlab.lib.pagesizes import A4, landscape

from reportlab.pdfgen import canvas

import sys

def file_name(file_dir, suffix = ".jpg"):

L=[]

for root, dirs, files in os.walk(file_dir):

for file in files:

if os.path.splitext(file)[1] == suffix:

L.append(os.path.join(root, file))

return L

#f_pdf pdf file path ,include filename

#filedir pic file path

#suffix pic file suffix examples: .jpg

def conpdf(f_pdf , filedir, suffix):

(w, h) = landscape(A4)

c = canvas.Canvas(f_pdf, pagesize = landscape(A4))

fileList = file_name(filedir, suffix)

for f in fileList:

(xsize, ysize) = Image.open(f).size

ratx = xsize / w

raty = ysize / h

ratxy = xsize / (1.0 * ysize)

if ratx > 1:

ratx = 0.99

if raty > 1:

raty = 0.99

rat = ratx

if ratx < raty:

rat = raty

widthx = w * rat

widthy = h * rat

widthx = widthy * ratxy

posx = (w - widthx) / 2

if posx < 0:

posx = 0

posy = (h - widthy) / 2

if posy < 0:

pos = 0

c.drawImage(f, posx, posy, widthx, widthy)

c.showPage()

c.save()

print "Image to pdf success!"

if __name__ == '__main__':

if len(sys.argv)== 4:

conpdf(sys.argv[1], sys.argv[2], sys.argv[3])

elif len(sys.argv) == 3:

#default .jpg

conpdf(sys.argv[1], sys.argv[2])

else:

conpdf("C:\\Users\\pzf\\test.pdf", "c:\\magn", ".jpg")

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com

特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值