Python使用PIL库实现图片添加文字

不晚
不晚
发布时间:2026-10-13 | 4人浏览过
原创

本文介绍如何使用Python的PIL库通过代码为图片添加文字。详细解析Image和ImageDraw模块的关键方法,提供完整代码示例,涵盖创建图片、指定文字坐标与样式、处理文件路径及异常保存等步骤,帮助开发者快速掌握图像处理的自动化技巧。

Python图片添加文字实现概述

在工作场景中,我们经常需要给图片添加文字说明。虽然Photoshop是常用的图形处理工具,但通过编写代码来实现这一功能可以提高效率并实现自动化。

PIL库核心模块解析

实现该功能主要依赖Python的PIL(Python Imaging Library)图像库。以下是该库中涉及的核心知识点:

Image模块:负责图片文件的创建、打开和保存操作。

  • new(path):用于创建一个新的图片文件,该文件保存在path指定的路径中。执行后返回一个Image类型的图片对象。
  • open(path):用于打开已存在的图片文件,文件路径由path指定。执行后同样返回Image类型的图片对象。
  • save(path):用于将创建或打开的图片保存到path指定的路径中。

ImageDraw模块:用于在图片上绘制点、线条、图形以及添加文字。

  • Draw(Image):接收一个Image类型的图片作为参数,返回一个ImageDraw类型的绘图对象,用于后续绘制操作。
  • 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)

以下是对代码逻辑的详细说明:

代码首先创建一个尺寸为320x240像素的白色背景图片,初始状态下图片内容为空。文字与图片边缘的距离设置为20像素,该值可根据需求自定义。字符占用长度的计算采用经验公式:字符长度乘以3,此系数也可根据实际显示效果调整。示例中添加到图片的文字内容为'good',该字符串同样支持自定义修改。

运行结果与注意事项

程序运行后的效果如下所示:

注意:首次运行代码时,如果指定的路径下不存在图片文件,程序会提示错误并创建一个新的图片。

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

当文件存在并成功运行时,系统将使用默认的图片浏览器打开生成的320x240像素图片。图片右下角会显示黑色的文字'good'。

以上就是本文的全部内容,希望这些内容能对您的学习有所帮助,也欢迎大家继续支持本站。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表