如何利用python给图片添加半透明水印


Posted in Python onSeptember 06, 2019

前言

本文主要给大家介绍了关于python图片添加半透明水印的相关资料,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧

示例代码:

# coding:utf-8

from PIL import Image, ImageDraw, ImageFont


def add_text_to_image(image, text):
 font = ImageFont.truetype('C:\Windows\Fonts\STXINGKA.TTF', 36)

 # 添加背景
 new_img = Image.new('RGBA', (image.size[0] * 3, image.size[1] * 3), (0, 0, 0, 0))
 new_img.paste(image, image.size)

 # 添加水印
 font_len = len(text)
 rgba_image = new_img.convert('RGBA')
 text_overlay = Image.new('RGBA', rgba_image.size, (255, 255, 255, 0))
 image_draw = ImageDraw.Draw(text_overlay)

 for i in range(0, rgba_image.size[0], font_len*40+100):
  for j in range(0, rgba_image.size[1], 200):
   image_draw.text((i, j), text, font=font, fill=(0, 0, 0, 50))
 text_overlay = text_overlay.rotate(-45)
 image_with_text = Image.alpha_composite(rgba_image, text_overlay)

 # 裁切图片
 image_with_text = image_with_text.crop((image.size[0], image.size[1], image.size[0] * 2, image.size[1] * 2))
 return image_with_text


if __name__ == '__main__':
 img = Image.open("test.jpg")
 im_after = add_text_to_image(img, u'测试使用')
 im_after.save(u'测试使用.png')

效果图:

如何利用python给图片添加半透明水印

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python获取标准北京时间的方法
Mar 24 Python
使用Python的Flask框架表单插件Flask-WTF实现Web登录验证
Jul 12 Python
pygame实现弹力球及其变速效果
Jul 03 Python
Python 网页解析HTMLParse的实例详解
Aug 10 Python
详谈在flask中使用jsonify和json.dumps的区别
Mar 26 Python
使用Scrapy爬取动态数据
Oct 21 Python
python实现将一维列表转换为多维列表(numpy+reshape)
Nov 29 Python
python创建ArcGIS shape文件的实现
Dec 06 Python
基于Keras 循环训练模型跑数据时内存泄漏的解决方式
Jun 11 Python
keras分类模型中的输入数据与标签的维度实例
Jul 03 Python
Python优秀开源项目Rich源码解析的流程分析
Jul 06 Python
能让Python提速超40倍的神器Cython详解
Jun 24 Python
Python从文件中读取指定的行以及在文件指定位置写入
Sep 06 #Python
Python常用数据类型之间的转换总结
Sep 06 #Python
Python3 JSON编码解码方法详解
Sep 06 #Python
PYTHON EVAL的用法及注意事项解析
Sep 06 #Python
Python实现微信机器人的方法
Sep 06 #Python
Linux下通过python获取本机ip方法示例
Sep 06 #Python
django-crontab 定时执行任务方法的实现
Sep 06 #Python
You might like
PHP使用array_multisort对多个数组或多维数组进行排序
2014/12/16 PHP
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
Yii2实现log输出到file及database的方法
2016/11/12 PHP
Mac系统完美安装PHP7详细教程
2017/06/06 PHP
JavaScript 继承详解(三)
2009/07/13 Javascript
5款Javascript颜色选择器
2009/10/25 Javascript
JavaScript中计算网页中某个元素的位置
2015/06/10 Javascript
javascript实现加载xml文件的方法
2015/11/24 Javascript
Jquery组件easyUi实现选项卡切换示例
2016/08/23 Javascript
使用Ajax与服务器(JSON)通信实例
2016/11/04 Javascript
jQuery基于Ajax方式提交表单功能示例
2017/02/10 Javascript
详解angularJS动态生成的页面中ng-click无效解决办法
2017/06/19 Javascript
基于jQuery实现图片推拉门动画效果的两种方法
2017/08/26 jQuery
js获取html页面代码中图片地址的实现代码
2018/03/05 Javascript
vue如何解决循环引用组件报错的问题
2018/09/22 Javascript
微信小程序云开发实现云数据库读写权限
2019/05/17 Javascript
layui固定下拉框的显示条数(有滚动条)的方法
2019/09/10 Javascript
解决layui的table插件无法多层级获取json数据的问题
2019/09/19 Javascript
python中模块的__all__属性详解
2017/10/26 Python
Flask之flask-session的具体使用
2018/07/26 Python
使用python绘制3维正态分布图的方法
2018/12/29 Python
使用 Python 处理 JSON 格式的数据
2019/07/22 Python
numpy中三维数组中加入元素后的位置详解
2019/11/28 Python
Python 改变数组类型为uint8的实现
2020/04/09 Python
浅谈keras.callbacks设置模型保存策略
2020/06/18 Python
解决tensorflow模型压缩的问题_踩坑无数,总算搞定
2021/03/02 Python
HTML5拖拉上传文件的简单实例
2017/01/11 HTML / CSS
简述DNS进行域名解析的过程
2013/12/02 面试题
幼师专业求职推荐信
2013/11/08 职场文书
数控技术应用个人求职信范文
2014/02/03 职场文书
《厄运打不垮的信念》教学反思
2014/04/13 职场文书
初三学习计划书范文
2014/04/30 职场文书
2015年秋季灭鼠工作总结
2015/07/27 职场文书
matlab xlabel位置的设置方式
2021/05/21 Python
Python数据可视化之绘制柱状图和条形图
2021/05/25 Python
Ajax异步刷新功能及简单案例
2021/11/20 Javascript