python PIL 使文字绘制居中显示


前言:在图片中绘制文字内容,如果希望文字内容居中绘制,就需要获取文字的大小和图片的大小结合做出调整

import pil

# 话不多说直接上代码👇
# 首先我们需要一张图片(自己创建图片也可以)
path = "./pic/luxunshuo/002.png"
bg = Image.open(path)

draw = ImageDraw.Draw(bg) # 创建可以在给定图像上绘图的对象
text = '乌拉!'            # 文字内容
size = 25                 # 文字大小
color = (252,252,252)     # 文字颜色
font = './ttf/青鸟华光简魏体字体.ttf'   # 字体格式设置(可以自己下载ttf格式字体)
font = ImageFont.truetype(font,size) # 加载字体格式和字体大小

# ---------------------------------------------------------------------------
x0,y0 = bg.size                      # 获得图片的大小
ascent, descent = font.getsize(text) # 这里拿到文字内容的大小
x = x0/2-ascent/2 # 这里是文字内容的居中绘制算法
y = 230           # y坐标也可以根据x算法设置居中显示(y0/2-descent/2),我这里是自定义

draw.text((x,y),text,color,font = font) # 绘制 文字坐标 文字内容 颜色 字体

bg.show()


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM