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 enumerate遍历数组示例应用
Sep 06 Python
Python中if __name__ == "__main__"详细解释
Oct 21 Python
Python获取单个程序CPU使用情况趋势图
Mar 10 Python
总结Python中逻辑运算符的使用
May 13 Python
在Django框架中运行Python应用全攻略
Jul 17 Python
利用 Monkey 命令操作屏幕快速滑动
Dec 07 Python
pandas数据分组和聚合操作方法
Apr 11 Python
pandas分别写入excel的不同sheet方法
Dec 11 Python
Python实现平行坐标图的两种方法小结
Jul 04 Python
详解如何用python实现一个简单下载器的服务端和客户端
Oct 28 Python
python 装饰器功能与用法案例详解
Mar 06 Python
python小型的音频操作库mp3Play
Apr 24 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
DC动画很好看?新作烂得令人发指,名叫《红色之子》
2020/04/09 欧美动漫
PHP IN_ARRAY 函数使用注意事项
2010/07/24 PHP
smarty的section嵌套循环用法示例
2016/05/28 PHP
Netbeans 8.2与PHP相关的新特性介绍
2016/10/08 PHP
PHP读取XML格式文件的方法总结
2017/02/27 PHP
PHP进阶学习之Geo的地图定位算法详解
2019/06/19 PHP
基于jquery的页面划词搜索JS
2010/09/14 Javascript
JS高级拖动技术 setCapture,releaseCapture
2011/07/31 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(一)让静态人物动起来
2013/01/23 Javascript
jQuery中读取json文件示例代码
2013/05/10 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
2013/11/20 Javascript
JQuery记住用户名和密码的具体实现
2014/04/04 Javascript
node.js中使用socket.io的方法
2014/12/15 Javascript
jQuery中slideUp()方法用法分析
2014/12/24 Javascript
整理Javascript流程控制语句学习笔记
2015/11/29 Javascript
JS数组合并push与concat区别分析
2015/12/17 Javascript
jQuery ajax时间差导致的变量赋值问题分析
2016/01/22 Javascript
js 实现一些跨浏览器的事件方法详解及实例
2016/10/27 Javascript
解决linux下node.js全局模块找不到的问题
2018/05/15 Javascript
chosen实现省市区三级联动
2018/08/16 Javascript
JavaScript模板引擎原理与用法详解
2018/12/24 Javascript
自动化Nginx服务器的反向代理的配置方法
2015/06/28 Python
python 删除列表里所有空格项的方法总结
2018/04/18 Python
Python 实现域名解析为ip的方法
2019/02/14 Python
Django REST framwork的权限验证实例
2020/04/02 Python
使用python-cv2实现视频的分解与合成的示例代码
2020/10/26 Python
python 利用matplotlib在3D空间中绘制平面的案例
2021/02/06 Python
HTML5 FileReader对象的具体使用方法
2020/05/22 HTML / CSS
猫途鹰英国网站:TripAdvisor英国(旅游社区和旅游评论)
2016/08/30 全球购物
Farfetch美国:奢侈品牌时尚购物平台
2019/05/02 全球购物
学习标兵获奖感言
2014/02/20 职场文书
《秋游》教学反思
2014/04/24 职场文书
商场父亲节活动方案
2014/08/27 职场文书
如何写好闭幕词
2019/04/02 职场文书
python 调用js的四种方式
2021/04/11 Python
oracle数据库去除重复数据
2022/05/20 Oracle