python 圖片轉 pdf

import os

import sys

from reportlab.lib.pagesizes import A4, landscape

from reportlab.pdfgen import canvas


'''

遍歷當前目錄下所有的jpg文件,並按照文件夾名稱合併成pdf文檔

python 3.4.4

圖片文件用數字按順序命名

 

'''


def conpdf():

    #獲取橫向A4大小

    (w, h) = landscape(A4)

   #遍歷當前目錄

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

         #根據根目錄名創建一個pdf

        c = canvas.Canvas(os.path.basename(root)+".pdf", pagesize = landscape(A4))

        #print(os.path.basename(root)+".pdf")

    #用於存放jpg文件

        jpg_list=[]

    #從文件列表中取出jpg文件放入到list中

        for p in files:

            #將jpg文件名存入列表

            if p[-4:] =='.jpg':

                #jpg_list.append(root + "\\" +p)

                jpg_list.append(p)

        #對文件名稱排序

        jpg_list.sort(key=lambda x :int(x[:-4]))

        #print(jpg_list)

        for f in jpg_list:

            #按順序把圖片畫到畫布上

         

            c.drawImage(root + "\\"+f, 0, 0, w, h)

            #結束當前頁並新建頁

            c.showPage()

           

        c.save()

    

    print ("ok.")


conpdf()


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章