1 Star 1 Fork 0

轮海软件/crop_image

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
imageAddText2.py 1.77 KB
一键复制 编辑 原始数据 按行查看 历史
陆巡软件 提交于 2024-10-16 03:04 . 初始化
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)
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/land-inspect/crop.git
[email protected]:land-inspect/crop.git
land-inspect
crop
crop_image
master

搜索帮助