当我们需要在图片上传或者共享时,为其添加水印,提高图片的防伪能力,使其更具有版权保护性。在python中实现图片水印的方法如下:
1.安装Pillow库
Pillow是Python的图像处理库,实现了多种图片读写格式。我们可以使用pip工具直接安装。
pip install Pillow
2.加载图片
在python中加载图片使用Pillow库中的Image对象。通过Image.open
方法读取图片生成Image对象。
from PIL import Image
# 读取图片
img = Image.open('image.jpg')
3.添加水印
我们可以通过将文字或图片作为水印,使用Pillow库中的draw方法将水印添加到图片中。
增加文字水印
from PIL import Image, ImageDraw, ImageFont
# 读取图片
img = Image.open('image.jpg')
# 添加文字水印
draw = ImageDraw.Draw(img)
text = 'watermark'
size = 36
color = (255, 255, 255)
width, height = img.size
font = ImageFont.truetype('Arial.ttf', size)
textwidth, textheight = draw.textsize(text, font)
draw.text(((width - textwidth) / 2, (height - textheight) / 2), text, font=font, fill=color)
# 保存图片
img.save('watermark.jpg')
增加图片水印
from PIL import Image
# 读取图片
img = Image.open('image.jpg')
# 读取水印图片
watermark = Image.open('watermark.png')
# 将水印图片缩略并调整透明度
watermark.thumbnail((100, 100))
watermark.putalpha(128)
# 将水印添加到图片中
img.paste(watermark, (10, 10), watermark)
# 保存图片
img.save('watermark.jpg')
示例说明
示例1
现在我们需要对一张名为image1.jpg
的图片添加文字水印,并将其保存为watermark1.jpg
。
from PIL import Image, ImageDraw, ImageFont
# 读取图片
img = Image.open('image1.jpg')
# 添加文字水印
draw = ImageDraw.Draw(img)
text = 'watermark'
size = 36
color = (255, 255, 255)
width, height = img.size
font = ImageFont.truetype('Arial.ttf', size)
textwidth, textheight = draw.textsize(text, font)
draw.text(((width - textwidth) / 2, (height - textheight) / 2), text, font=font, fill=color)
# 保存图片
img.save('watermark1.jpg')
示例2
我们需要对一张名为image2.jpg
的图片添加图片水印,并将其保存为watermark2.jpg
。
from PIL import Image
# 读取图片
img = Image.open('image2.jpg')
# 读取水印图片
watermark = Image.open('watermark.png')
# 将水印图片缩略并调整透明度
watermark.thumbnail((100, 100))
watermark.putalpha(128)
# 将水印添加到图片中
img.paste(watermark, (10, 10), watermark)
# 保存图片
img.save('watermark2.jpg')
以上就是实现图片水印的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python实现水印图片功能 - Python技术站