Python实现图片添加文字

 更新时间:2019年11月26日 09:15:31   作者:talk_8  
这篇文章主要为大家详细介绍了Python实现图片添加文字,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

在工作中有时候会给图上添加文字,常用的是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基础学习之奇异的GUI对话框

    Python基础学习之奇异的GUI对话框

    今天跨进了GUI编程的园地,才发现python语言是这么的好玩,文中对GUI对话框作了非常详细的介绍,对正在学习python的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-05-05
  • Python使用matplotlib实现的图像读取、切割裁剪功能示例

    Python使用matplotlib实现的图像读取、切割裁剪功能示例

    这篇文章主要介绍了Python使用matplotlib实现的图像读取、切割裁剪功能,结合实例形式分析了Python基于matplotlib操作图片的加载、读取、坐标控制及裁剪相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • Python如何把不同类型数据的json序列化

    Python如何把不同类型数据的json序列化

    这篇文章主要介绍了Python如何把不同类型数据的json序列化,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-04-04
  • 使用PyQt的QLabel组件实现选定目标框功能的方法示例

    使用PyQt的QLabel组件实现选定目标框功能的方法示例

    这篇文章主要介绍了使用PyQt的QLabel组件实现选定目标框功能的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • python list count统计个数的实现

    python list count统计个数的实现

    这篇文章主要介绍了python list count统计个数的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • Flask之闪现flash原理及使用

    Flask之闪现flash原理及使用

    Flask中的闪现是一种在请求之间传递消息的机制,本文就来介绍一下Flask之闪现flash原理及使用,具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • Python中星号的五种用法小结

    Python中星号的五种用法小结

    本文主要介绍了Python中星号的五种用法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • python获取多线程及子线程的返回值

    python获取多线程及子线程的返回值

    这篇文章主要介绍了python获取多线程及子线程的返回值的相关资料,需要的朋友可以参考下
    2017-11-11
  • pandas使用dtype/dtypes修改数据类型

    pandas使用dtype/dtypes修改数据类型

    在数据处理和分析中,经常需要对数据进行类型转换以满足特定的需求,本文主要介绍了pandas使用dtype/dtypes修改数据类型,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • Python中排序函数sorted()函数的使用实例

    Python中排序函数sorted()函数的使用实例

    sorted()作为Python内置函数之一,其功能是对序列(列表、元组、字典、集合、还包括字符串)进行排序,下面这篇文章主要给大家介绍了关于Python中排序函数sorted()函数的相关资料,需要的朋友可以参考下
    2022-11-11

最新评论