python3自動(dòng)生成簽名圖片

最近公司架構(gòu)做了一些調(diào)整,團(tuán)隊(duì)名、部門名都有發(fā)生一些變化,因?yàn)楣緝?nèi)部電郵都會(huì)帶上一個(gè)個(gè)人簽名,簽名里面有姓名,職稱,所屬團(tuán)隊(duì)和部門,個(gè)人電話、電郵等等資訊,為了整個(gè)公司的統(tǒng)一形象,所以想利用python寫一個(gè)腳本批量生成這些簽名圖片。

這么多個(gè)人資料怎么導(dǎo)入呢,可以使用excel表,讀取里面的值,再把這些值寫入到一個(gè)圖片中。因?yàn)闄谖幻Q都是固定的,所以只用調(diào)整一次位置就可以給所有人使用了。

廢話不多說,上代碼:

# -*- coding:utf-8 -*-

from PIL import Image, ImageDraw, ImageFont
from openpyxl import load_workbook
import time

# open excel,讀取里面的值
wb = load_workbook('signature.xlsx')
sheet = wb.active
row = sheet.max_row

# 設(shè)置字體樣式
font_type = '/System/Library/Fonts/STHeiti Light.ttc'
font_medium_type = '/System/Library/Fonts/STHeiti Medium.ttc'
name_font = ImageFont.truetype(font_medium_type, 55)
title_font = ImageFont.truetype(font_medium_type, 45)
font = ImageFont.truetype(font_type, 24)
color = (0, 0, 255, 255)


for l in range(1,row + 1):
    l = str(l)
    name = sheet['A'+l].value
    title = sheet['B'+l].value
    mobile = sheet['C'+l].value
    telephone = sheet['D'+l].value
    email = sheet['E'+l].value
    address = sheet['F'+l].value
    n = 18
    summary_list = [address[i:i + n] for i in range(0, len(address), n)]

    # 圖片名稱
    img = './template.jpg'  # 圖片模板
    new_img = name + '.jpg'  # 生成的圖片
    compress_img = name + '_compress.jpg'  # 壓縮后的圖片

    # 打開圖片
    image = Image.open(img)
    draw = ImageDraw.Draw(image)


    # 寫入name
    draw.text((190, 10),name,font=name_font,fill=color)

    # 寫入title
    draw.text((650,10), title, font=title_font,fill=color)

    # 寫入mobile
    draw.text((190,80), mobile, font=font,fill=color)

    # 寫入telephont
    draw.text((650,80), telephone, font=font,fill=color)

    # 寫入email
    draw.text((190,130), email, font=font,fill=color)

    # 寫入address
    summary_line = 35
    for num, summary in enumerate(summary_list):
        y = num * summary_line
        draw.text((240, 170+y), summary, font=font,fill=color)

    # 生成圖片
    image.save(new_img)

這樣無論有多少個(gè)人,都可以批量生成了。最后上一下效果圖,因?yàn)楸救瞬粫?huì)ui設(shè)計(jì),所以圖做的很丑,大概看看就好,哈哈。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容