由于近来需要将大量的图片全屏展示给观众,然而试了各种全屏播放的软件均不能使某些近视眼又不愿意戴眼镜的观众看到当前图片的文件名,于是乎通过py实现,将当前图片的文件名以水印添加到图片上,又大又红这下就看的清楚了。
from PIL import Image, ImageDraw, ImageFont
import os
# 指定输入和输出目录
input_directory = r"D:\图斑"
output_directory = r"D:\图斑\修改后"
# 检查输出目录是否存在,如果不存在则创建
if not os.path.exists(output_directory):
os.makedirs(output_directory)
# 设置水印文字的字体和大小
font = ImageFont.truetype("arial.ttf", 80)
# 设置水印文字的颜色
text_color = (255, 0, 0) # 红色
# 遍历输入目录中的所有图片文件
for filename in os.listdir(input_directory):
if filename.endswith(".jpg") or filename.endswith(".png"):
# 加载图片
image_path = os.path.join(input_directory, filename)
image = Image.open(image_path)
# 创建绘制对象
draw = ImageDraw.Draw(image)
# 提取文件名并作为水印文字
watermark_text = os.path.splitext(filename)[0]
# 计算文字位置
text_width, text_height = draw.textsize(watermark_text, font)
x = (image.width - text_width) // 2
y = image.height - text_height - 10
# 添加水印文字
draw.text((x, y), watermark_text, font=font, fill=text_color)
# 保存修改后的图片到输出目录
output_path = os.path.join(output_directory, filename)
image.save(output_path)
print(f"水印已添加到 {filename}")
print("批量操作完成")
可自行修改代码中的目录与水印文字颜色字体等。该水印添加到图片的地步
修改前图片:
修改后图片: