Python实现图片添加文字


Posted in Python onNovember 26, 2019

在工作中有时候会给图上添加文字,常用的是PS工具,不过我想通过代码的方式来给图片添加文字。

需要使用的Python的图像库:PIL.更加详细的知识点如下:

Imaga模块:用来创建,打开,保存图片文件

  • new(path):用来创建一个新的图片文件.该文件位于path所在的路径中。。打开后返回Image类型的图片。
  • open(path):用来打开已经存在的图片文件.该文件位于path所在的路径中。打开后返回Image类型的图片。
  • save(path):用来把创建或者打开的图片保到path所在的路径中。

ImageDraw模块:用来在图片上绘制点,线,图形和文字。

  • Draw(Image):用来返回一个ImageDraw类型的图片,它的参数为Image类型的图片。
  • text((x,y),str,…):用来在图片上添加文字,文字位置x,y所在坐标处,文字内容为str,其它参数可以控制文字字体和颜色。

下面是完整的代码,请参考:

from PIL import Image,ImageDraw

def addText(img,string):
  size = img.size
  width = size[0] - 20
  high = size[1] - 20
  lenth = len(string)*3
  draw = ImageDraw.Draw(img)
  draw.text((width-lenth,high),string,fill='black')
  oriImg.show()
  oriImg.save(path)


path = input("Please input the image file with path")

try:
  print("path: "+path)
  oriImg = Image.open(path)
  addText(oriImg,"good")
except IOError:
  print("can't' open the file,check the path again")
  newImg = Image.new('RGBA',(320,240),'white')
  newImg.save(path)

关于代码做以下说明:

在代码中,会创建一个320*240和图片,背景为白色,里面什么也没有。
把文字和图片边的宽度设置成了20,这个可以自己定义。另外,字符占用的长度乘以3是个经验值,也可以修改。
在图片中添加的文字为'good',这个可以自己定义。

下面是程序的运行结果:

PS:第一次运行时,如果没有图片,会有以下提示,同时会创建一个新的图片。

Please input the image file with pathH:\download\test.png(this is content of input )
path: H:\download\test.png
can't' open the file,check the path again

以后再次运行时,就使用系统默认的图片浏览器打开一个320*240和图片,图片右下角有黑色的文字:'good‘

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python的循环体中使用else语句的方法
Mar 30 Python
Python的Bottle框架中实现最基本的get和post的方法的教程
Apr 30 Python
Python中处理字符串之isalpha()方法的使用
May 18 Python
django2用iframe标签完成网页内嵌播放b站视频功能
Jun 20 Python
python dataframe向下向上填充,fillna和ffill的方法
Nov 28 Python
pyshp创建shp点文件的方法
Dec 31 Python
python调试神器PySnooper的使用
Jul 03 Python
Django中如何使用sass的方法步骤
Jul 09 Python
Python3常用内置方法代码实例
Nov 18 Python
解决python 找不到module的问题
Feb 12 Python
Python如何重新加载模块
Jul 29 Python
利用python进行数据加载
Jun 20 Python
从numpy数组中取出满足条件的元素示例
Nov 26 #Python
python实现图片上添加图片
Nov 26 #Python
numpy:找到指定元素的索引示例
Nov 26 #Python
python中seaborn包常用图形使用详解
Nov 25 #Python
解决python中的幂函数、指数函数问题
Nov 25 #Python
妙用itchat! python实现久坐提醒功能
Nov 25 #Python
python pygame实现滚动横版射击游戏城市之战
Nov 25 #Python
You might like
PHP clearstatcache()函数详解
2010/03/02 PHP
PHP中使用Session配合Javascript实现文件上传进度条功能
2014/10/15 PHP
PHP实现生成唯一会员卡号
2015/08/24 PHP
Laravel框架中Blade模板的用法示例
2017/08/30 PHP
jQuery UI-Draggable 参数集合
2010/01/10 Javascript
JS 屏蔽键盘不可用与鼠标右键不可用的方法
2013/11/18 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
2015/11/27 Javascript
图文详解JavaScript的原型对象及原型链
2016/08/02 Javascript
详解网站中图片日常使用以及优化手法
2017/01/09 Javascript
利用原生JS与jQuery实现数字线性变化的动画
2017/02/24 Javascript
jquery replace方法去空格
2017/05/08 jQuery
jQuery dateRangePicker插件使用方法详解
2017/07/28 jQuery
react.js 父子组件数据绑定实时通讯的示例代码
2017/09/25 Javascript
详解JS浏览器事件循环机制
2019/03/27 Javascript
在vue和element-ui的table中实现分页复选功能
2019/12/04 Javascript
Vue项目打包编译优化方案
2020/09/16 Javascript
[37:47]IG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
零基础写python爬虫之抓取百度贴吧并存储到本地txt文件改进版
2014/11/06 Python
Python实现TCP/IP协议下的端口转发及重定向示例
2016/06/14 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
python中列表和元组的区别
2017/12/18 Python
flask框架路由常用定义方式总结
2019/07/23 Python
使用 css3 实现圆形进度条的示例
2017/07/05 HTML / CSS
html5实现多图片预览上传及点击可拖拽控件
2018/03/15 HTML / CSS
英国领先的高街书籍专家:Waterstones
2018/02/01 全球购物
AVI-8手表美国官方商店:AVI-8 USA
2019/04/10 全球购物
台湾良兴购物网:EcLife
2019/12/01 全球购物
儿科护士实习自我鉴定
2013/10/17 职场文书
园林专业毕业生自荐信
2014/07/04 职场文书
部门活动策划方案
2014/08/16 职场文书
党的群众路线教育实践活动个人自我剖析材料
2014/10/07 职场文书
2015年教师节贺卡寄语
2015/03/24 职场文书
房地产销售助理岗位职责
2015/04/14 职场文书
2016教师党员学习心得体会
2016/01/21 职场文书
不会写演讲稿,快来看看这篇文章!
2019/08/06 职场文书
能用CSS实现的就不要麻烦JavaScript了
2021/10/05 HTML / CSS