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实现的一个找零钱的小程序代码分享
Aug 25 Python
跟老齐学Python之眼花缭乱的运算符
Sep 14 Python
Python求两个list的差集、交集与并集的方法
Nov 01 Python
python基于物品协同过滤算法实现代码
May 31 Python
python 执行文件时额外参数获取的实例
Dec 18 Python
如何在Django中设置定时任务的方法示例
Jan 18 Python
Python实现定时自动关闭的tkinter窗口方法
Feb 16 Python
python 定时器,轮询定时器的实例
Feb 20 Python
python自制包并用pip免提交到pypi仅安装到本机【推荐】
Jun 03 Python
根据tensor的名字获取变量的值方式
Jan 04 Python
Python解析微信dat文件的方法
Nov 30 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
Feb 27 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
水质对咖图啡风味的影响具体有哪些
2021/03/03 冲泡冲煮
基于PHP对XML的操作详解
2013/06/07 PHP
基于thinkphp6.0的success、error实现方法
2019/11/05 PHP
ImageZoom 图片放大镜效果(多功能扩展篇)
2010/04/14 Javascript
jQuery 源码分析笔记(5) jQuery.support
2011/06/19 Javascript
阻止事件(取消浏览器对事件的默认行为并阻止其传播)
2013/11/03 Javascript
javascript实现数字验证码的简单实例
2014/02/10 Javascript
JavaScript插件化开发教程(五)
2015/02/01 Javascript
浏览器中url存储的JavaScript实现
2015/07/07 Javascript
jquery 正整数数字校验正则表达式
2017/01/10 Javascript
webpack多页面开发实践
2017/12/18 Javascript
Node.js实现注册邮箱激活功能的方法示例
2018/03/23 Javascript
Node.js Buffer用法解读
2018/05/18 Javascript
JS中call和apply函数用法实例分析
2018/06/20 Javascript
react在安卓中输入框被手机键盘遮挡问题的解决方法
2018/09/03 Javascript
postman自定义函数实现 时间函数的思路详解
2019/04/17 Javascript
Layui弹出层 加载 做编辑页面的方法
2019/09/16 Javascript
JavaScript实现京东快递单号查询
2020/11/30 Javascript
通过数据库向Django模型添加字段的示例
2015/07/21 Python
详解python3中socket套接字的编码问题解决
2017/07/01 Python
Python实现的序列化和反序列化二叉树算法示例
2019/03/02 Python
python字符串Intern机制详解
2019/07/01 Python
Python实现线性插值和三次样条插值的示例代码
2019/11/13 Python
深入浅出CSS3 background-clip,background-origin和border-image教程
2011/01/27 HTML / CSS
HTML5 视频播放(video),JavaScript控制视频的实例代码
2018/10/08 HTML / CSS
美国婚礼和派对礼品网站:Kate Aspen(新娘送礼会、迎婴派对)
2018/03/28 全球购物
荷兰电脑专场:Paradigit
2018/05/05 全球购物
泰国时尚电商:POMELO Fashion
2020/03/11 全球购物
应届护士求职信范文
2014/01/26 职场文书
青年教师培训方案
2014/02/06 职场文书
工程质量承诺书
2014/03/27 职场文书
财务部副经理岗位职责范本
2014/06/17 职场文书
开学第一周值周总结
2015/07/16 职场文书
学校学期工作总结
2015/08/13 职场文书
MySql开发之自动同步表结构
2021/05/28 MySQL
FP-growth算法发现频繁项集——发现频繁项集
2021/06/24 Python