logo

利用PIL库批量给图片添加文字水印

作者:菠萝爱吃肉2024.01.08 11:47浏览量:7

简介:本文将介绍如何使用Python的PIL库批量给图片添加文字水印,帮助你提高图片处理效率。

在Python中,PIL(Pillow)库是一个强大的图像处理库,可以方便地对图像进行各种操作,包括添加文字水印。下面是一个使用PIL库批量给图片添加文字水印的示例代码:
首先,确保你已经安装了Pillow库。如果没有安装,可以通过以下命令进行安装:

  1. pip install Pillow

接下来,你可以使用以下代码批量给图片添加文字水印:

  1. import os
  2. from PIL import Image, ImageDraw, ImageFont
  3. # 设置要添加文字水印的目录和输出目录
  4. input_dir = 'input'
  5. output_dir = 'output'
  6. # 获取目录下所有图片文件名
  7. image_files = [f for f in os.listdir(input_dir) if f.endswith('.jpg')]
  8. # 遍历所有图片文件
  9. for image_file in image_files:
  10. # 打开原始图片
  11. img = Image.open(os.path.join(input_dir, image_file))
  12. # 创建画布并绘制文字水印
  13. draw = ImageDraw.Draw(img)
  14. font = ImageFont.truetype('arial.ttf', 30) # 指定字体和大小,根据需要修改字体和大小
  15. text = 'Your Watermark Text' # 替换为你想要添加的文字水印内容
  16. text_width, text_height = draw.textsize(text, font) # 获取文字宽度和高度
  17. x = (img.width - text_width) / 2 # 计算文字水印的x坐标
  18. y = (img.height - text_height) / 2 # 计算文字水印的y坐标
  19. draw.text((x, y), text, font=font, fill=(0, 0, 0)) # 在图片上绘制文字水印,填充颜色为黑色
  20. # 保存处理后的图片到指定目录
  21. img.save(os.path.join(output_dir, image_file))

这段代码会遍历指定目录下的所有.jpg图片文件,对每个文件添加文字水印,并将处理后的图片保存到指定的输出目录。你可以根据需要修改字体、大小、颜色以及水印的位置。请注意,这里使用的是Arial字体,如果你的系统中没有Arial字体,可以替换为其他可用的字体文件。
此外,如果你想要在图片上添加不同位置和不同样式的文字水印,可以调整draw.text()方法的参数来满足你的需求。例如,你可以修改xy坐标来改变水印的位置,或者修改fill参数来改变水印的颜色。
最后,别忘了将代码中的input_diroutput_dirtext等变量替换为你自己的实际值。这样,你就可以使用这段代码批量给图片添加文字水印了。希望对你有所帮助!如有其他问题,请随时提问。

相关文章推荐

发表评论