代码拉取完成,页面将自动刷新
from PIL import Image, ImageFont, ImageDraw
import numpy as np
def add_text_to_image(input_image_path, output_image_path, text, position='中心'):
# 打开图片文件
image = Image.open(input_image_path)
# 转换为数组
img_array = np.array(image)
# 创建一个可以在图片上绘图的对象
img_pil = Image.fromarray(img_array)
draw = ImageDraw.Draw(img_pil)
# 设置需要显示的字体(这里使用宋体)
fontpath = "path_to_your_font/simsun.ttc" # 请替换为实际的字体文件路径
font = ImageFont.truetype(fontpath, 32)
# 获取图片尺寸
img_width, img_height = img_pil.size
# 计算文字尺寸
text_bbox = draw.textbbox((0, 0), text, font=font)
text_width, text_height = text_bbox[2] - text_bbox[0], text_bbox[3] - text_bbox[1]
# 根据位置参数计算文字的绘制坐标
if position == '左上':
x, y = 10, 10
elif position == '左下':
x, y = 10, img_height - text_height - 10
elif position == '右上':
x, y = img_width - text_width - 10, 10
elif position == '右下':
x, y = img_width - text_width - 10, img_height - text_height - 10
elif position == '中心':
x, y = (img_width - text_width) // 2, (img_height - text_height) // 2
else:
raise ValueError("无效的位置参数")
# 绘制文字信息
draw.text((x, y), text, font=font, fill=(255, 255, 255))
# 保存修改后的图片
img_pil.save(output_image_path)
# 调用函数来添加文字到图片的指定位置
input_image = '美图.jpg'
output_image = '美图_image2.jpg'
text_to_add = "你好,美图"
position = '右下' # 可以是 '左上', '左下', '右上', '右下', '中心'
add_text_to_image(input_image, output_image, text_to_add, position)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。