准备:

pip install Image

操作:

  1. 准备图片(水印图和需要加印的图)
  2. 了解图片放置的绝对路径和相对路径
import os
from PIL import Image
#这里是一个文件内所有图片的查看方法,不参与水印图制作
'''img_suffix_list = ['png', 'jpg', 'bmp']
for i in os.listdir(r"C:\Users\USER_wzz\Desktop\新建文件夹"):
    if i.split('.')[-1] in img_suffix_list:
        print(i)'''
img = Image.open(r"需要加水印图的位置")  # 打开图片
watermark = Image.open(r"水印图的位置")  # 打开水印
img_size = img.size
wm_size = watermark.size
wm_position = (img_size[0]-wm_size[0],img_size[1]-wm_size[1]) # 默认设定水印位置为右下角
layer = Image.new('RGBA', img.size)  # 新建一个图层
layer.paste(watermark, wm_position)  # 将水印图片添加到图层上
mark_img = Image.composite(layer, img, layer)
mark_img.save(r"保存的位置及名称设定")

结果演示:

1.准备图片

2.代码运行

import os
from PIL import Image
img = Image.open(r"C:\Users\USER_wzz\Desktop\新建文件夹\4.jpg")  # 打开图片
watermark = Image.open(r"C:\Users\USER_wzz\Desktop\fingerprint.png")  # 打开水印
img_size = img.size
wm_size = watermark.size
wm_position = (img_size[0]-wm_size[0],img_size[1]-wm_size[1]) # 默认设定水印位置为右下角
layer = Image.new('RGBA', img.size)  # 新建一个图层
layer.paste(watermark, wm_position)  # 将水印图片添加到图层上
mark_img = Image.composite(layer, img, layer)
mark_img.save(r"C:\Users\USER_wzz\Desktop\1.png")

3.运行结果

利用python为自己的图片添加水印-赴京书生
合成的水印图

后期改进策略:

  • 可以设置水印图的大小和位置
  • 借助Python的PyQt5/PySide2,将批量添加图片水印的功能封装成一个桌面客户端程序
  • 客户端运行图如下图:
利用python为自己的图片添加水印-赴京书生
赞赏

利用python为自己的图片添加水印-赴京书生微信赞赏利用python为自己的图片添加水印-赴京书生支付宝赞赏