批量在照片上添加姓名,怎么批量给照片添加姓名

首页 > 实用技巧 > 作者:YD1662023-04-22 23:07:01

今天LP大人,有几百张各种细菌的图片要发到一个微信群,但是她尝试了几张后发现,发过去的图片在群里面没有显示它本来的名称,点开图片也看不到细菌的名字,本来我是打算让她把图片打成压缩包发过去,别人一解压,压缩包里有图片带名字的,但人家不愿意,说领导让直接一张一张发群里,我也不晓得她们领导发哪样神经,不过呢,LP的领导管着她,她又管着我,最后这差事只能落我手里了。

几百张图片,我也不可能去一张一张打开用PS给加文字,而且它每张图片的名字都不一样,那些批量给图片加水印的软件也用不上了。

只能自己写一个了,还好也不难,原理嘛,就是用python遍历图片文件,把图片文件名取出来,变成文字,给画到图片上,最后另存。

下面是源码:

# pip install pillow # Importing the PIL library from PIL import Image from PIL import ImageDraw from PIL import ImageFont import os import re import shutil path = os.getcwd() #取当前目录 if (os.path.exists("out")): shutil.rmtree("out") # 递归删除非空文件夹 os.mkdir("out") # 创建一个out目录,打上文字的图片放这个目录,避免覆盖原图 lsts = os.listdir(path) # 目录文件列表 for fname in lsts: # 遍历每一个文件 if (re.search(r'bmp|jpg',fname)==None): # 如果不是bmp和jpg格式的略过 continue fullName = "%s\\%s"%(path,fname) # 得到该文件完整路径 # Open an Image img = Image.open(fullName) # 打开图片 # Call draw Method to add 2D graphics in an image I1 = ImageDraw.Draw(img) # 准备画图 myFont = ImageFont.truetype('simsun.ttc', 65) # 加载字体文件 # Add Text to an image I1.text((28, 36), re.sub(r"\.(bmp|jpg)", "", fname), font=myFont, fill=(255, 0, 0)) # 将文件名去后缀后画在图片上 # Display edited image # img.show() # Save the edited image img.save("%s\\out\\%s"%(path,fname)) # 图片另存到 out 目录

说明,simsun.ttc 文件怎么获取:

1,开始 -> 运行,输入 control ,并确定

批量在照片上添加姓名,怎么批量给照片添加姓名(1)

2,打开控制面板后,搜索“字体”

批量在照片上添加姓名,怎么批量给照片添加姓名(2)

3,打开字体目录,并搜索““simsun.ttc””

批量在照片上添加姓名,怎么批量给照片添加姓名(3)

4,复制到你的程序文件同目录就行了。

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.