【图片操作】批量添加图片水印

简介: 现在盗图是非常常见的事情,许多人在使用图片时都不会标注图片的出处或者提及作者,这个时候水印就是个很好的东西了。我们可以给图片添加水印后再分享出去,这样就可以让其它人知道图片作者相关的信息。今天我们就带大家来实现水印的添加。

一、前言

现在盗图是非常常见的事情,许多人在使用图片时都不会标注图片的出处或者提及作者,这个时候水印就是个很好的东西了。我们可以给图片添加水印后再分享出去,这样就可以让其它人知道图片作者相关的信息。今天我们就带大家来实现水印的添加。

二、文字水印

在添加水印的时候,我们比较常用的就是文字水印。比如@ZackSock@juejin:ZackSock等。这种水印的添加非常简单,只需要使用到Pillow模块的添加文字的操作即可,代码如下:

from PIL import Image, ImageFont, ImageDraw
# 加载字体
font = ImageFont.truetype('msyh.ttc', 60)
# 加载图片
im = Image.open('im.jpg')
# 创建画笔
drawer = ImageDraw.Draw(im)
# 准备文本
text = '@ZackSock'
# 绘制文本
drawer.text((0, 0), text, (0, 255, 0), font)
im.show()
复制代码

这里需要注意几个地方,第一个就是水印大小。水印大小也就是文字大小,这个是由:

font = ImageFont.truetype('msyh.ttc', 60)
复制代码

中第二个参数决定的,因此我们可以通过调节该参数调整水印大小。 第二点就是水印位置和水印颜色,这个就是通过:

drawer.text((0, 0), text, (0, 255, 0), font)
复制代码

中第一个和第三个参数决定的,其中(0,0)表示水印左上角的坐标,而(0,255,0)表示水印的RGB值,具体调节可以参考RGB配色表。

三、图片水印

文字水印使用起来比较方便,但是有时候我们更习惯将有代表性的logo作为水印,这个时候就可以图片水印了,代码如下:

from PIL import Image
im = Image.open('origin.png')
watermark = Image.open('watermark.png')
w, h = im.size
watermark.thumbnail((w//6, h//6))
# 获取水印尺寸
w2, h2 = watermark.size
# 计算位置
x = w-w2
y = h-h2
# 粘贴
im.paste(watermark, (x, y))
im.show()
复制代码

实现效果如下:

网络异常,图片无法展示
|
这里主要就是调用了 paste方法,它用来粘贴图片。我们把水印调整好大小后粘贴到原图上即可。 另外如果是用透明图片作为水印的话上面的代码是有问题的,我们可以修改为如下:

from PIL import Image
im = Image.open('origin.png').convert('RGBA')
watermark = Image.open('watermark.png').convert('RGBA')
w, h = im.size
watermark.thumbnail((w//6, h//6))
# 获取水印的透明图层 
r, g, b, a = watermark.split()
w2, h2 = watermark.size
x = w-w2
y = h-h2
# 让透明图片正常粘贴
im.paste(watermark, (x, y), mask=a)
im.show()
复制代码

我们修改后透明图片也能正常粘贴了。

目录
相关文章
|
4月前
批量获取图片(中)
批量获取图片(中)
46 0
|
4月前
批量获取图片(下)
批量获取图片(下)
47 0
|
3月前
|
存储 Python
python实现图片与视频转换:将视频保存为图片,将批量图片保存为视频
python实现图片与视频转换:将视频保存为图片,将批量图片保存为视频
|
4月前
|
文字识别 测试技术 数据安全/隐私保护
案例:批量区域识别内容重命名,批量识别扫描PDF区域内容识别重命名,批量识别图片区域内容重命名图片修改图片名字,批量识别图片区域文字并重命名,批量图片部分识别内容重命文件,PDF区域内容提取重命名
该内容介绍了如何使用区域识别重命名软件高效整理图片,例如将图片按时间及内容重命名,适用于简历、单据等识别。文中提供了软件下载链接(百度云盘和腾讯网盘),并列出软件使用的几个关键条件,包括文字清晰、文件名长度限制等。示例展示了银行单据和公司工作单据的识别情况。文章还提及OCR技术在图片文字识别中的应用,强调了识别率、误识率和用户友好性等评估指标。如有类似需求,读者可留言或下载软件测试,并提供图片以获取定制的识别方案。
|
4月前
|
iOS开发 MacOS Python
批量获取图片(上)
批量获取图片(上)
41 0
|
Python
【图片操作】批量生成缩略图
在我们日常生活中,缩略图很大程度减少了我们内存的使用。如果我们看一张图片就必须加载完成后才能看,那么我们就会发现很多应用都变慢了很多,而且流量也消耗的很快。今天我们就来看看Python生成缩略图的操作。
358 0
|
程序员 数据安全/隐私保护 iOS开发
一日一技:如何批量给PDF添加水印?
一日一技:如何批量给PDF添加水印?
457 0
一日一技:如何批量给PDF添加水印?
|
计算机视觉
【图片操作】生成动态图片
动态图片我们使用的还是比较频繁的,平时的表情包有很多动图。今天我们要做的就是自己制作动态图片,其实就是将视频转换成动图,操作起来非常简单。下面我们就来看看如何实现吧。
564 0
|
文件存储 Android开发 数据安全/隐私保护
Android图片添加水印图片并把图片保存到文件存储
Android图片添加水印图片并把图片保存到文件存储 package zhangphil.test; import android.
1488 0
|
JavaScript
原生js实现图片单张上传及批量上传
原生js实现图片单张上传及批量上传