使用python裁切图片水印

查看 67|回复 7
作者:矢岛舞美   
本来的想法是使用python批量将水印给抹除,结果发现效果很差,那马赛克也忒难看了,转换了一下思路,直接把水印部分裁切掉,适合水印在底部的图片
使用方式:运行代码,选择需要处理的图片所在文件夹即可,
[color=]ps:处理后的图片会直接覆盖原图
[Python] 纯文本查看 复制代码import os
from PIL import Image
from tkinter import filedialog
def remove_watermark(directory, watermark_height_ratio):
    for filename in os.listdir(directory):
        if filename.endswith('.jpg') or filename.endswith('.png'):
            image_path = os.path.join(directory, filename)
            image = Image.open(image_path)
            width, height = image.size
            # 根据水印占据的比例,计算水印的高度
            watermark_height = int(height * watermark_height_ratio)
            # 计算剪切区域的坐标
            new_image = image.crop((0, 0, width, height - watermark_height))
            new_image.save(image_path)  # 直接覆盖原来的图片
directory = filedialog.askdirectory()  # 打开文件对话框选择目录
remove_watermark(directory, 0.1)

水印, 图片

sai609   

请问这个主要用来干啥,有啥用处
大兵马元帅   

你这是没有办法的办法啊
vethenc   

感谢分享,也是一个办法啊
xingwenzhiyuan   

是水印在 文字的底部吗? 还是水印就在图片的底部!
矢岛舞美
OP
  


xingwenzhiyuan 发表于 2024-1-30 21:26
是水印在 文字的底部吗? 还是水印就在图片的底部!

主要是针对水印放在左右下角那种
zyz1234   

还不错,感谢分享
忧郁之子   

终于找到了我想要的方法,谢谢分享
您需要登录后才可以回帖 登录 | 立即注册

返回顶部