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')
相关推荐
m0_748554816 小时前
golang如何实现用户订阅偏好管理_golang用户订阅偏好管理实现总结
jvm·数据库·python
smj2302_796826527 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
阿正呀8 小时前
Redis怎样实现本地缓存的高效失效通知
jvm·数据库·python
九转成圣8 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
SmartRadio8 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
2501_901200538 小时前
mysql如何设置InnoDB引擎参数_优化innodb_buffer_pool
jvm·数据库·python
laowangpython8 小时前
Rust 入门:GitHub 热门内存安全编程语言
开发语言·其他·rust·github
我叫汪枫8 小时前
在后台管理系统中,如何递归和选择保留的思路来过滤菜单
开发语言·javascript·node.js·ecmascript
_.Switch8 小时前
东方财富股票数据JS逆向:secids字段和AES加密实战
开发语言·前端·javascript·网络·爬虫·python·ecmascript
软件技术NINI8 小时前
webkit简介及工作流程
开发语言·前端·javascript·udp·ecmascript·webkit·yarn