利用python实现多图片加上水印(可变化字体大小,颜色,位置,水印的深浅)

利用python实现多图片加上水印(可变化字体大小,颜色,位置,水印的深浅)

1.水印代码

# -*- coding: utf-8 -*-
from PIL import Image, ImageDraw, ImageFont
src="G:/Desktop/csdn/"
src1="G:/Desktop/csdn/加水印/"
# 使用PIL库对图像添加水印
# image: 图片  text:要添加的文本
def add_text_to_image(image, text):
    font = ImageFont.truetype("G:\Desktop\STXINGKA.TTF", 50, encoding="unic")#可变化字体,和大小
    rgba_image = image.convert('RGBA')  # 将图像转化为4x8位像素,带透明度掩模的真彩色
    text_overlay = Image.new('RGBA', rgba_image.size, (255, 255, 255, 0))  # 生成一个新的图像(模式,大小,颜色)
    image_draw = ImageDraw.Draw(text_overlay)  # 创建一个可以在给定图像上绘图的对象
    image_draw.text((100, 200), text, font=font, fill=(255,0,0,40))#可变化字体位置,字体深浅
    image_with_text = Image.alpha_composite(rgba_image, text_overlay)
    return image_with_text
def xunhuan(): #循环调用
    for i in range(1,5):
         im_before = Image.open(src + "{}.png".format(i))  # 打开一张图片
         im_after = add_text_to_image(im_before, '不点个关注再走吗???')  # 使用PIL库添加水印
         im_after.show()
         im_after.save(src1 + "{}_after.png".format(i))  # 保存图片

if __name__=="__main__":
     xunhuan()

2.水印运行截图

请添加图片描述
请添加图片描述

3.代码需要注意地方

请添加图片描述请添加图片描述
请添加图片描述

注意:

例如:fill = (200, 10, 10, 0.5)

对于RGBA模式的图片,填充半透明色,alpha位置取值是0-255,你希望50%,应该是用128,不是0.5。

这样就走了吗???

请添加图片描述

Guess you like

Origin blog.csdn.net/qq_56607768/article/details/120499359