Python给图片加水印

受到"手动给证件加文字太麻烦"的感触,想用Python来实现给图片加水印,这不方便多了。

这里使用PIL模块

python 复制代码
from PIL import Image
from PIL import ImageFont
from PIL import ImageDraw

img_t =  Image.open('cat.jpg')
img_size_t = img_t.size
w = img_t.width
h = img_t.height
f = img_t.format

print(img_size_t) 
print(w,h,f) # 得到图片大小和 图片格式
python 复制代码
# img_path 原图片路径
# output_path 处理后,输出的图片路径
# text 要添加的水印文字

def watermark_Image3(img_path, output_path, text):
    img = Image.open(img_path)
    drawing = ImageDraw.Draw(img)
    
    text_t = text
    init_y = 200
    for x in range(100, 2300, 500):   
        for y in range(init_y, 1400, 200):          
            # font = ImageFont.truetype("simsun.ttc", size= 80) # 设置字体和文字大小
            # 选择系统字体 r'C:/Windows/Fonts/Arial.ttf' 
            font = ImageFont.truetype(r'C:/Windows/Fonts/Impact.ttf', size= 80) # 设置字体和文字大小
            drawing.text((x,y), '{}!'.format(text_t), font=font, fill='red') # 文本左上角坐标,文本内容(我还在文本后加了个!),文本颜色 。
            # fill也可以使用RGB编码设置颜色,如 fill=(256,256,256)
            
        if init_y <= 200: # 使每列水印有个高度差
            init_y += 100
        else:
            init_y -= 100
    img.show()
    img.save(output_path) # 保存

img_path_t = 'cat.jpg'
watermark_Image3(img_path_t, 'cat_watermarked3.jpg', 'cat')
相关推荐
UpgradeLink2 分钟前
基于 Go 打造的升级链路管理平台:upgradelink 让设备升级更简单
开发语言·后端·golang
比奇堡的猪猪3 分钟前
修改默认conda环境(在win中)
python·conda
天府之绝4 分钟前
uniapp 中使用uview表单验证时,自定义扩展的表单,在改变时无法触发表单验证处理;
开发语言·前端·javascript·vue.js·uni-app
萧鼎14 分钟前
深入解析 Python 的 Word 模板引擎:docxtpl 全面指南
开发语言·python·word
Chan1616 分钟前
场景题:如何设计一个分布式ID
java·开发语言·spring boot·java-ee·intellij-idea
Yeats_Liao21 分钟前
昇腾910B与DeepSeek:国产算力与开源模型的架构适配分析
人工智能·python·深度学习·神经网络·机器学习·架构·开源
chamu9921 分钟前
C++ 的可调用对象
开发语言·c++
tianyuanwo22 分钟前
Bash与Sh的诞生背景、底层原理及Linux多Shell解释器兼容性解析
linux·开发语言·bash
智航GIS23 分钟前
11.3 Pandas 模块功能概览
python·信息可视化·pandas
浩子智控24 分钟前
开源RPA选择
python·c#·软件工程