温馨提示×

python加水印的方法有哪些

小亿
117
2023-08-12 03:15:13
栏目: 编程语言

在Python中,可以使用以下几种方法给图片添加水印:

  1. 使用PIL库(Python Imaging Library):PIL库是Python中常用的图像处理库,可以使用它来添加水印。首先,需要使用PIL库打开原始图片,然后创建一个新的图片对象,将原始图片复制到新图片对象上,并使用PIL库的文本绘制功能在新图片上添加水印。最后,将新图片保存到磁盘上。
from PIL import Image, ImageDraw, ImageFont
# 打开原始图片
image = Image.open('original_image.jpg')
# 创建一个新的图片对象,并将原始图片复制到新图片对象上
new_image = Image.new('RGBA', image.size, (0, 0, 0, 0))
new_image.paste(image, (0, 0))
# 在新图片上添加水印
draw = ImageDraw.Draw(new_image)
text = 'Watermark'
font = ImageFont.truetype('arial.ttf', 36)
draw.text((10, 10), text, font=font, fill=(255, 255, 255, 128))
# 保存新图片
new_image.save('watermarked_image.jpg')
  1. 使用OpenCV库:OpenCV是一个用于图像处理和计算机视觉任务的开源库,也可以使用它来添加水印。首先,使用OpenCV库的cv2.putText()函数在原始图片上添加水印文本。最后,将带有水印的图片保存到磁盘上。
import cv2
# 读取原始图片
image = cv2.imread('original_image.jpg')
# 在原始图片上添加水印
text = 'Watermark'
position = (10, 50)
font = cv2.FONT_HERSHEY_SIMPLEX
fontScale = 1
color = (255, 255, 255)
thickness = 2
cv2.putText(image, text, position, font, fontScale, color, thickness)
# 保存带有水印的图片
cv2.imwrite('watermarked_image.jpg', image)
  1. 使用Pygame库:Pygame是Python中的一个游戏开发库,也可以用于添加水印。首先,使用Pygame库加载原始图片。然后,使用Pygame库的绘制文本功能在原始图片上添加水印。最后,将带有水印的图片保存到磁盘上。
import pygame
# 初始化Pygame
pygame.init()
# 加载原始图片
image = pygame.image.load('original_image.jpg')
# 创建一个新的图片对象,并将原始图片复制到新图片对象上
new_image = pygame.Surface(image.get_size())
new_image.blit(image, (0, 0))
# 在新图片上添加水印
font = pygame.font.SysFont('arial', 36)
text_surface = font.render('Watermark', True, (255, 255, 255))
new_image.blit(text_surface, (10, 10))
# 保存带有水印的图片
pygame.image.save(new_image, 'watermarked_image.jpg')

以上是Python中几种常用的添加水印的方法,每种方法都有其优缺点,根据实际需求选择合适的方法。

0