拒绝盗图!教你怎么用python给图片加水印


Posted in Python onJune 04, 2021

方式一:叠加文字水印

最简单的一种方式是,在图片上绘制半透明文本来实现水印效果。

拒绝盗图!教你怎么用python给图片加水印

主要用到Figure.text函数

参数 类型 说明
x, y float 叠加文本的位置坐标.,取值范围在 [0, 1]。
s str 文本字符串。
fontdict dict 可选 用于覆盖默认文本属性的字典。如果未给出,则默认值由 rcParams[“font.*”]确定。作为kwargs传递的属性,会覆盖fontdict 中给出的相应属性。

叠加文字水印的代码如下

import numpy as np
import matplotlib.pyplot as plt
%matplotlib qt5
# 绘制图表内容
fig, ax = plt.subplots()
ax.plot(np.random.rand(10), '-o', ms=10, lw=2, alpha=0.7)
ax.grid()

# 叠加水印文字,对文字沿轴旋转30°,透明度50%
ax.text(0.5, 0.5, 'created with https://blog.csdn.net/Bit_Coders/', transform=ax.transAxes,
        fontsize=20, color='gray', alpha=0.5,
        ha='center', va='center', rotation='30')

plt.show()

文本属性的相关参数详见:官方文档

方式二:叠加图片水印

图片水印可以叠加你设计好的logo、icon或者二维码图片。

下面以二维码为例,在图表上叠加你的博客二维码水印:

拒绝盗图!教你怎么用python给图片加水印

图片水印主要用到figimage函数

参数 类型 说明
X 图像数据 数组格式是以下三种之一, MxN:亮度(灰度)值,MxNx3:RGB 值,MxNx4:RGBA 值
xo,yo int 以像素为单位的x/y图像偏移量
alpha None or float 混合透明度
cmap str or matplotlib.colors.Colormap 使用的颜色图,默认值: rcParams[“image.cmap”] (default: ‘viridis')
resize bool 是否缩放figure来匹配给定的图片尺寸

1、生成二维码图片:在命令行用myqr生成对应

myqr https://blog.csdn.net/Bit_Coders

生成的二维码图片会保存到当前路径。

拒绝盗图!教你怎么用python给图片加水印

2、叠加图片水印,代码如下

import numpy as np
from PIL import Image
import matplotlib.image as image
import matplotlib.pyplot as plt
from matplotlib import cm

# 加载水印图片,并缩放到合适大小
resize_w = 100
img = Image.open('J:\Projects\PythonScripts\qrcode.png')
img = img.resize((resize_w,resize_w))

fig, ax = plt.subplots()

# 绘制图表内容
ax.plot(np.random.rand(10), '-o', ms=10, lw=2, alpha=0.7)
ax.grid()

# 确定叠加位置
nx = int(fig.get_figwidth() * fig.dpi)
ny = int(fig.get_figheight() * fig.dpi)
pos_x = nx - resize_w 
pos_y = 10

# 叠加图片水印
fig.figimage(img, pos_x,pos_y, alpha=.5)

plt.show()

到此这篇关于拒绝盗图!教你怎么用python给图片加水印的文章就介绍到这了,更多相关python给图片加水印内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python动态加载变量示例分享
Feb 17 Python
Python 正则表达式的高级用法
Dec 04 Python
python文件特定行插入和替换实例详解
Jul 12 Python
python复制文件到指定目录的实例
Apr 27 Python
计算机二级python学习教程(1) 教大家如何学习python
May 16 Python
在python下使用tensorflow判断是否存在文件夹的实例
Jun 10 Python
利用Python实现手机短信监控通知的方法
Jul 22 Python
Python如何通过Flask-Mail发送电子邮件
Jan 29 Python
Python数据可视化处理库PyEcharts柱状图,饼图,线性图,词云图常用实例详解
Feb 10 Python
pytorch 如何使用batch训练lstm网络
May 28 Python
python3+PyQt5+Qt Designer实现界面可视化
Jun 10 Python
Matplotlib绘制条形图的方法你知道吗
Mar 21 Python
python四个坐标点对图片区域最小外接矩形进行裁剪
Python OpenCV 图像平移的实现示例
Python包argparse模块常用方法
Jun 04 #Python
opencv读取视频并保存图像的方法
Python还能这么玩之用Python做个小游戏的外挂
Jun 04 #Python
python opencv旋转图片的使用方法
Python还能这么玩之用Python修改了班花的开机密码
You might like
php 常用类汇总 推荐收藏
2010/05/13 PHP
ThinkPHP3.1新特性之查询条件预处理简介
2014/06/19 PHP
PHP不使用内置函数实现字符串转整型的方法示例
2017/07/03 PHP
phpstorm 配置xdebug的示例代码
2019/03/31 PHP
在JavaScript中通过URL传递汉字的方法
2007/04/09 Javascript
JavaScript Event学习第九章 鼠标事件
2010/02/08 Javascript
JavaScript高级程序设计 阅读笔记(二十一) JavaScript中的XML
2012/09/14 Javascript
JQuery实现用户名无刷新验证的小例子
2013/03/22 Javascript
javascript中的window.location.search方法简介
2013/09/02 Javascript
jQuery操作Select的Option上下移动及移除添加等等
2013/11/18 Javascript
JS 删除字符串最后一个字符的实现代码
2014/02/20 Javascript
jQuery插件FusionCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/06 Javascript
借助node实战JSONP跨域实例
2017/03/30 Javascript
js自定义Tab选项卡效果
2017/06/05 Javascript
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
基于Particles.js制作超炫粒子动态背景效果(仿知乎)
2017/09/13 Javascript
微信小程序实现星星评价效果
2018/11/02 Javascript
[06:24]DOTA2亚洲邀请赛小组赛第三日 TOP10精彩集锦
2015/02/01 DOTA
[00:52]DOTA2齐天大圣预告片
2016/08/13 DOTA
使用python BeautifulSoup库抓取58手机维修信息
2013/11/21 Python
python中is与双等于号“==”的区别示例详解
2017/11/21 Python
python定向爬虫校园论坛帖子信息
2018/07/23 Python
python实现Virginia无密钥解密
2019/03/20 Python
python实现连续变量最优分箱详解--CART算法
2019/11/22 Python
PyTorch中Tensor的数据类型和运算的使用
2020/09/03 Python
Python调用ffmpeg开源视频处理库,批量处理视频
2020/11/16 Python
成语的广告词
2014/03/19 职场文书
保险公司早会主持词
2014/03/22 职场文书
市场开发计划书
2014/05/07 职场文书
本科毕业生求职信
2014/06/15 职场文书
2014公安机关纪律作风整顿思想汇报
2014/09/13 职场文书
企业务虚会发言材料
2014/10/20 职场文书
钢铁是怎样炼成的读书笔记
2015/06/29 职场文书
校园新闻稿范文
2015/07/18 职场文书
go语言中http超时引发的事故解决
2021/06/02 Golang
Django对接elasticsearch实现全文检索的示例代码
2021/08/02 Python