欢迎访问宙启技术站
智能推送

利用Python生成带有水印的PNG图像

发布时间:2023-12-10 23:53:50

生成带有水印的PNG图像可以使用Python中的PIL库(Python Imaging Library)来实现。PIL库为我们提供了一系列处理图像的功能,包括添加水印、调整大小、剪裁等。

下面是一个简单的示例,展示了如何使用Python生成带有水印的PNG图像:

from PIL import Image, ImageDraw, ImageFont

# 打开原始图像
image = Image.open('original.png')
width, height = image.size

# 创建一个新的画布,与原始图像大小一致
new_image = Image.new('RGBA', (width, height), (255, 255, 255, 0))

# 在新的画布上绘制原始图像
new_image.paste(image, (0, 0), image)

# 创建一个文字水印
text_watermark = "Watermark"
font = ImageFont.truetype('Arial.ttf', 36)
text_width, text_height = font.getsize(text_watermark)
text_layer = Image.new('RGBA', (text_width, text_height), (255, 255, 255, 0))
text_draw = ImageDraw.Draw(text_layer)
text_draw.text((0, 0), text_watermark, font=font, fill=(255, 255, 255, 100))

# 将文字水印添加到图像上
position = (width - text_width, height - text_height)
new_image.paste(text_layer, position, text_layer)

# 保存生成的图像
new_image.save('watermarked.png')

在这个例子中,我们首先打开一个原始的PNG图像,然后创建一个与原始图像大小相同的新画布。接下来,我们将原始图像绘制在新画布上。然后,我们创建一个带有文字的水印图层,并将其添加到新画布的适当位置上。最后,我们保存生成的带有水印的PNG图像。

请确保在运行代码之前将original.pngArial.ttf文件放置在同一目录下,以便正确加载图像和字体文件。

这只是一个简单的示例,你可以根据自己的需求进行修改和扩展。希望这个示例对你有所帮助!