您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用PIL在图像上添加文本

使用PIL在图像上添加文本

我认为其中提供的ImageFont模块PIL应有助于解决文本字体大小问题。只需检查哪种字体类型和大小适合你,然后使用以下功能更改字体值即可。

# font = ImageFont.truetype(<font-file>, <font-size>)
# font-file should be present in provided path.
font = ImageFont.truetype("sans-serif.ttf", 16)

因此,你的代码将类似于以下内容

from PIL import Image
from PIL import ImageFont
from PIL import ImageDraw 

img = Image.open("sample_in.jpg")
draw = ImageDraw.Draw(img)
# font = ImageFont.truetype(<font-file>, <font-size>)
font = ImageFont.truetype("sans-serif.ttf", 16)
# draw.text((x, y),"Sample Text",(r,g,b))
draw.text((0, 0),"Sample Text",(255,255,255),font=font)
img.save('sample-out.jpg')

你可能需要花费一些额外的精力来计算字体大小。如果要根据用户在中提供的文本量进行更改TextArea

添加文本换行(多行的东西),只需大致了解一行中可以包含多少个字符,然后就可以为Text编写预处理功能,该函数基本上可以找到每行中最后一个字符,将此字符之前的空格转换为换行符。

其他 2022/1/1 18:24:10 有460人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶