Python 3.10 ImageFont.truetype 将文字转换成图片,并解决中文乱码问题


#!/usr/bin/env python
# coding=utf-8

from PIL import Image, ImageDraw, ImageFont


def draw_png(name, font_size=24):
    font = ImageFont.truetype("simsun.ttc", font_size, encoding="unic")
    text_width, text_height = font.getsize(name)
    image = Image.new(mode='RGBA', size=(text_width, text_height))
    draw_table = ImageDraw.Draw(im=image)
    draw_table.text(xy=(0, 0), text=name, fill='#000000', font=font)

    # image.show()  # 直接显示图片
    image.save('D:\\test\\' + '11111.png', 'PNG')  # 保存在当前路径下,格式为PNG
    image.close()