600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > python 实现图片添加文字水印

python 实现图片添加文字水印

时间:2023-11-09 01:47:39

相关推荐

python 实现图片添加文字水印

在python中我们可以使用openCV给图片添加水印,这里注意openCV无法添加汉字水印,添加汉字水印上可使用PIL库给图片添加水印

一:openCV给图片添加水印

1:安装openCV

pipinstallopencv-python

如果安装报错的话,可以参考:/site/detail.html?id=230

2:使用openCV给图片添加水印实例:

#-*-coding:utf-8-*-importcv2#载入突破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 cv2import numpyfrom PIL import Image, ImageDraw, ImageFontimg = 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 = 80fontStyle = ImageFont.truetype("font/simsun.ttc", textSize, encoding="utf-8")# 绘制文本left = 100top = 100text = '中国'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')

根据如上代码现象如下:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。