对于给图片打标签,我们经常使用opencv来,但是在遇到中文成为流行语言的时候,给图片写上中文成为一大亮点。
就例如在车辆属性、车牌识别的时候,我们经常会使用得到中文。
下面是根据营业执照的模板样式给它赋予数据(内容)
在这里我们需要设置字体,我们需要选取能够支持中文的字体,font
font = ImageFont.truetype("./simsun.ttc",25)
font_1 = ImageFont.truetype("./simsun.ttc",20)
im1 = Image.open('./model.jpg')
draw = ImageDraw.Draw(im1)
draw.text((345,640),'企业名称', (0, 0, 0),font=font)#企业名称
draw.text((345,640+1*40),'企业类型', (0, 0, 0),font=font)#企业类型
draw.text((345,640+2*40),'所属地区', (0, 0, 0),font=font)#所属地区
draw.text((345,640+3*40),'法定代表人', (0, 0, 0),font=font)#法定代表人
draw.text((345,640+4*40),'注册资本', (0, 0, 0),font=font)#注册资本
draw.text((345,640+5*40),'成立日期', (0, 0, 0),font=font)#成立日期
draw.text((345,640+6*40),'营业期限', (0, 0, 0),font=font)#营业期限
"""
在这里我们由于有的字符串太长,我们只能截取前面的数据来展示
"""
len_d = len('经营范围')#这里是经营范围的字符串
for lo in range(0,int(len_d/30)+1):
try:
draw.text((345,925+lo*33), '经营范围'[lo*30:lo*30+30], (0, 0, 0), font=font_1)
except:
pass
if lo==7:
break
draw.text((650, 568), '统一社会信用代码', (0, 0, 0), font=font_1)
from PIL import Image, ImageDraw, ImageFont
import pandas as pd
word_size = 18 # 文字大小
"""
STXINGKA.TTF华文行楷
simkai.ttf 楷体
SIMLI.TTF隶书
"""
font = ImageFont.truetype("./simsun.ttc",25)
font_1 = ImageFont.truetype("./simsun.ttc",20)
data = pd.read_csv('./data_chuli.csv')
for i in range(0,120):
im1 = Image.open('./model.jpg')
draw = ImageDraw.Draw(im1)
strs =data.loc[i]
draw.text((650, 568), strs['统一社会信用代码'], (0, 0, 0), font=font_1)
for id,_p in enumerate(['企业名称','企业类型','所属地区','法定代表人','注册资本','成立日期','营业期限']):
print(strs[_p])
draw.text((345,640+id*40),strs[_p], (0, 0, 0),font=font)
len_d = len(strs['经营范围'])
for lo in range(0,int(len_d/30)+1):
try:
draw.text((345,925+lo*33), strs['经营范围'][lo*30:lo*30+30], (0, 0, 0), font=font_1)
except:
pass
if lo==7:
break
#im1.save('./imgs/{}.jpg'.format(strs['统一社会信用代码']))
希望这篇文章对你有用!
谢谢点赞评论!