在Python中,给图片添加文字可以使用Pillow库(PIL的一个分支),它是一个强大的图像处理库。如果你还没有安装Pillow,可以通过pip安装:
pip install Pillow
下面使用一个简单的示例,演示如何使用Pillow库在图片中添加文字:
from PIL import Image, ImageDraw, ImageFont
def add_text_to_image(image_path, text, position=(10, 10), font_path='simsun.ttc', font_size=30, color=(255, 255, 255)):
"""
在图片上添加文字
:param image_path: 图片路径
:param text: 要添加的文本
:param position: 文本位置,默认为左上角
:param font_path: 字体文件路径,默认使用arial字体
:param font_size: 字体大小
:param color: 文字颜色,默认为白色
"""
# 打开图片
image = Image.open(image_path)
draw = ImageDraw.Draw(image)
# 加载字体,确保font_path指向一个有效的字体文件
try:
font = ImageFont.truetype(font_path, font_size)
except IOError:
print("字体文件未找到,请检查font_path路径是否正确。")
return
# 在图片上添加文字
draw.text(position, text, fill=color, font=font)
# 保存或显示图片
# image.show() # 显示图片
output_path = 'image_with_text.png' # 输出图片的路径
image.save(output_path)
print(f"带有文字的图片已保存至: {output_path}")
# 使用示例
image_path = 'example.png' # 你的图片路径
add_text_to_image(image_path, "Hello, World!", position=(100, 100), color=(0, 0, 0))
原始图片:
最终效果:
这段代码定义了一个add_text_to_image
函数,接受图片路径、要添加的文字、位置、字体、字体大小、颜色等参数。请确保指定的字体文件路径是正确的,并根据需要调整其他参数。如果只需要基本字体,通常可以在系统字体目录下找到(例如Windows的C:\Windows\Fonts
),或者你可以下载特定的字体文件并提供其路径。