【Python 02】工作小妙招(批量在图片指定处添加文本)

帮助别人真快乐~

前几天临近过年,领导布置了一项任务:给市场同事发一张感谢信图片,里面包括同事姓名、入职时长、组织名称、活跃渠道数以及销售业绩。
这可把设计狮妹子愁坏了,算了算她得做几百张,用AI批量替换也需要不小的时间成本且怕有纰漏出现;
看着头疼的她,我放下手里的大宽表,看了几眼用python 批量添加文本的方法,看起来难度不高,那就搞一哈~

引用相关包
# Pillow库是Python里的图像处理库,提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存、图像显示、格式转换以及基本的图像处理操作等;
from PIL import Image,ImageDraw,ImageFont
import pandas as pd
import xlrd
准备文件材料及设置
# 打开底图
im = Image.open(r'D:\xxx\xxx\xxx\xxx\设计底图.jpg')
# 打开数据集
data = pd.read_excel(r"D:\xxx\xxx\xxx\文本数据对应表.xlsx")
# 另存一张底图,这样不会影响原文件使用
im.save(r'D:\xxx\xxx\xxx\image.png')
# 设置字体,选择一个合适的字体及大小
ttfont = ImageFont.truetype('msyhbd.ttc',50)
经过一系列单元格测试写入位置合适后,实现多处循环写入如下
for index,value in data.iterrows():
    image = Image.open(r'D:\xxx\xxx\xxx\image.png')
    img_draw = ImageDraw.Draw(image)
    # 写入位置1,180是横向偏移量,215是纵向偏移量,代表的是离图片右下角的像素点距离;
    # str(value[xxx] 是字符化表格里的值,因为有的是整数类型,小数类型
    # font 设置字体
    # fill 设置线条颜色
    img_draw.text((180,215),str(value[1]),font = ttfont)
    img_draw.text((500,350),str(value[2]),font = ttfont)
    img_draw.text((30,680),str(value[0]),font = ttfont,fill='#9B5728')
    img_draw.text((410,760),str(value[4]),font = ttfont,fill='#9B5728')
    img_draw.text((450,920),str(value[3]),font = ttfont,fill='#9B5728')
    # 可展示一下,方便观测
    image.show()
    # 储存到相关位置并按相关信息命名
    image.save(r'D:\xxx\xxx\xxx\test pic\{}{}.png'.format(value[0],value[1]))

搞定!~
在这里插入图片描述
设计狮妹子两眼泪汪汪呐,能回家过个好年了~

大家一起也试试吧!

参考学习网址:
侠客岛 Python批量处理图片

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Eason DayDayUp

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值