在python里面给图片添加水印的方法有很多,诸如PIL、matplotlib等包都可以快速给图片添加文字或者图片水印。本文主要介绍如何利用matplotlib给图片快速添加文字水印,例子如下:


# 加载必备包
import numpy as np
import matplotlib.pyplot as plt


np.random.seed(2021)
fig, ax = plt.subplots()

# 绘制点图
ax.plot(np.sin(10 * np.linspace(0, 1)), '-o', ms=20, alpha=0.7, mfc='orange')
# 添加网格
ax.grid()
# 添加文字水印,参考https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.text.html
fig.text(0.9, 0.1,               # 文字相对位置,(0,0)是左下角,而(1,1)是右上角
         'Watermark@copyright',  # 文字内容
         fontsize=30,            # 文字大小
         color='gray',           # 字体颜色
         ha='right', va='bottom',# 垂直、水平位置
         alpha=0.2,              # 水印透明度
         rotation=30             # 文字旋转角度
        )
# 绘图
plt.show()

也可以用fig.figimage添加图片水印,更多内容可以参考matplotlib官方文档。

参考资料:

1.https://matplotlib.org/gallery/images_contours_and_fields/watermark_image.html

2.https://matplotlib.org/gallery/text_labels_and_annotations/watermark_text.html