本篇文章小编给大家分享一下python实现图片加文字水印OPenCV和PIL库代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
在python中我们可以使用openCV给图片添加水印,这里注意openCV无法添加汉字水印,添加汉字水印上可使用PIL库给图片添加水印
一:openCV给图片添加水印
1:安装openCV
pip install opencv-python
2:使用openCV给图片添加水印实例:
# -*- coding: utf-8 -*- import cv2 # 载入突破 img = cv2.imread('test.jpg') # 给图片添加文字水印 # cv2.putText(图像,需要添加字符串,需要绘制的坐标,字体类型,字号,字体颜色,字体粗细) img2 = cv2.putText(img, 'test', (100, 100), cv2.LINE_AA, 2, (249, 249, 249), 4) # 保存图片 cv2.imwrite('wj.jpg', img2) # 下面是将生成的图片再弹窗中显示 cv2.imshow('img',img2) cv2.waitKey(0) cv2.destoryAllWindows('img')
根据如上代码生成的水印图片如下:
二:使用PIL给图片添加水印
# -*- coding: utf-8 -*- import cv2 import numpy from PIL import Image, ImageDraw, ImageFont img = cv2.imread('test.jpg') # 判断是否是openCV图片类型 if (isinstance(img, numpy.ndarray)): # 转化成PIL类型 img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) draw = ImageDraw.Draw(img) # 字体的格式 textSize = 80 fontStyle = ImageFont.truetype( "font/simsun.ttc", textSize, encoding="utf-8") # 绘制文本 left = 100 top = 100 text = '中国' textColor = (168, 121, 103) draw.text((left, top), text, textColor, font=fontStyle) # 转换回OpenCV类型 img2 = cv2.cvtColor(numpy.asarray(img), cv2.COLOR_RGB2BGR) # 保存图片 cv2.imwrite('wj.jpg', img2) cv2.imshow('img',img2) cv2.waitKey(0) cv2.destoryAllWindows('img')
根据如上代码现象如下:
庇护所的日子 安卓版v15.0.5
庇护所的日子是一款像素画风的冒险游戏,场景制作细腻,玩家们需
梦想城镇华为版 安卓最新版v12.1.0
梦想城镇华为版是一款玩法非常丰富的模拟经营类手游,玩家将在一
胡椒大厨去广告 最新版v1.4.134
胡椒大厨去广告是一款非常好玩的模拟经营类游戏,玩家在这里可以
谁是首富红包版 安卓版v1.0.59
谁是首富红包版是游戏的特殊版本,为游戏加入了掉红包的功能,为
梦想超市旧版本 安卓版v3.2.5
梦想超市旧版本,这是一款玩法独特的模拟经营手游,由合肥乐堂动