返回

让图片自带水印!轻松解锁PIL批量图片水印秘诀

闲谈

批量图片水印大法:用 PIL 库打造你的个性化图片王国

简介

作为图片爱好者,我们经常希望在自己的作品中增添一些个人特色,让它们更显独特。图片水印就是一个绝佳的选择,它可以巧妙地将你的个人风格融入图片中,提升图片的识别度。本文将带领你踏上 PIL 库批量图片水印之旅,帮助你轻松打造个性化图片,让你的作品闪耀出与众不同的光彩。

PIL 库简介

Python Imaging Library (PIL) 库是一个强大的图像处理工具,它拥有丰富的功能,可以满足你的各种图像处理需求,包括裁剪、调整大小、旋转、颜色处理等。而我们今天要重点关注的,是 PIL 库的文字水印功能,它将助力你轻松为图片添加上独一无二的标识。

上手指南

1. 安装 PIL 库

首先,你需要安装 PIL 库,可以通过以下命令轻松搞定:

pip install PIL

2. 创建 Image 对象

安装完成后,就可以创建 Image 对象了,它将承载你即将处理的图片。

from PIL import Image
image = Image.open("image.jpg")

添加水印

1. 创建 ImageFont 对象

接下来,我们需要创建包含水印文字的 ImageFont 对象。

from PIL import ImageFont
font = ImageFont.truetype("arial.ttf", 20)

2. 绘制水印文字

万事俱备,只欠东风。现在,我们可以将水印文字绘制到 Image 对象上了。

draw = ImageDraw.Draw(image)
draw.text((10, 10), "水印文字", font=font, fill=(255, 0, 0))

3. 保存水印图片

最后,将添加了水印的 Image 对象保存到文件中。

image.save("image_with_watermark.jpg")

批量水印处理

如果你有多张图片需要添加水印,可以利用以下代码进行批量处理:

import os

# 获取当前目录下的所有图片文件
image_files = os.listdir(".")

# 遍历图片文件并添加水印
for image_file in image_files:
    image = Image.open(image_file)
    draw = ImageDraw.Draw(image)
    draw.text((10, 10), "水印文字", font=font, fill=(255, 0, 0))
    image.save("image_with_watermark_" + image_file)

总结

掌握了 PIL 库批量图片水印技术,你就能轻松打造个性化的图片,让你的作品脱颖而出。无论是为自己的图片集锦添加水印,还是为客户提供定制化图片服务,PIL 库都能成为你得心应手的帮手。发挥你的创造力,用独一无二的水印标识你的图片,让你的作品闪耀出属于你的独特光芒吧!

常见问题解答

1. 如何更改水印文字的大小和颜色?

通过修改 fontfill 参数可以更改水印文字的大小和颜色。例如,要将水印文字增大到 30 号,并更改为蓝色,可以这样写:

font = ImageFont.truetype("arial.ttf", 30)
fill = (0, 0, 255)

2. 如何更改水印文字的位置?

通过修改 (10, 10) 参数可以更改水印文字的位置。这个参数是一个元组,代表水印文字左上角的坐标。

3. 如何在图片的多个位置添加水印?

可以通过多次调用 draw.text() 函数在图片的多个位置添加水印。例如,要同时在左上角和右下角添加水印,可以这样写:

draw.text((10, 10), "水印文字 1", font=font, fill=(255, 0, 0))
draw.text((image.width - 10, image.height - 10), "水印文字 2", font=font, fill=(0, 0, 255))

4. 如何在图片上添加透明水印?

可以通过设置 alpha 参数来添加透明水印。alpha 参数是一个介于 0 到 255 之间的整数,它表示水印的透明度。例如,要添加一个 50% 透明的水印,可以这样写:

fill = (255, 0, 0, 127)

5. 如何将水印添加到不同格式的图片?

PIL 库支持多种图像格式,包括 JPEG、PNG 和 GIF。你可以使用 Image.open() 函数打开不同格式的图片,并使用相同的方法添加水印。