在工作中有时候会给图上添加文字,常用的是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实现图片添加文字相关推荐

  1. python docx 批量修改docx文件内容和选择位置添加内容

    #-*- encoding:utf_8 -*- from docx import Document from docx.shared import Inches from log import log ...

  2. 【Python】批量导出word文档中的图片、嵌入式文件

    Python 批量导出word文档中的图片.嵌入式文件 需求 学生试卷中的题目有要提交截图的,也有要提交文件的,为了方便学生考试,允许单独交或者嵌入Word中提交,那么事后如何整理学生的答案?单独提交 ...

  3. python自动化办公 51cto_利用python实现批量自动化运维脚本案例

    本文为通过密码或密钥实现python批量自动化运维脚本案例分享,是老男孩linux培训 python课程教学案例内容,后续会分享多线程并发执行这个脚本的更高级的功能(http://oldboy.blo ...

  4. python 文件批量转换格式_使用python批量化音乐文件格式转换的实例

    使用python批量化音乐文件格式转换的实例 最近在做声音文件数据处理,写了一个自动将m4a文件转化为wav的脚本. import os m4a_path = "/Users/Downloa ...

  5. python实现批量下载视频_利用Python实现批量下载腾讯视频!

    原标题:利用Python实现批量下载腾讯视频! 导语 利用Python下载腾讯非VIP视频,也就是可以免费观看的视频.做这个的起因是最近在看一个叫"请吃红小豆吧"的动漫,一共三分钟 ...

  6. python怎么批量下载年报_使用Python批量下载Wind数据库中的PDF报告

    原标题:使用Python批量下载Wind数据库中的PDF报告 背景 最近小编出于工作需要,准备在Wind金融数据终端批量下载上市公司2019年第一季度业绩预告.通过相关的条件检索,发现其相关数据有近百 ...

  7. python mysql批量insert数据_使用python往mysql批量插入数据时,报错not all arguments converted...

    我用这段命令可以往mysql数据库插入数据 insert into moderation_task(id, media_id, user_id, media_url_or_path, media_ti ...

  8. python 卡方检验批量筛选_卡方检验(python代码实现)

    医药统计项目QQ:231469242 分类变量检验方法 卡方分布绘图 如果多个符合正态分布的独立随机变量z1,z2,z3.....zk, z1+z2+z3+....z_k呈现卡方分布,自由度k. 有几 ...

  9. Python抓取知乎几千张小MM图片是什么体验

    知乎上有许多关于颜值.身材的话题,有些话题的回复数甚至高达几百上千,拥有成千上万的关注者与被浏览数.如果我们在摸鱼的时候欣赏这些话题将花费大量的时间,可以用 Python 制作一个下载知乎回答图片的小 ...

最新文章

  1. C++_代码重用3-私有继承
  2. IntelliJ IDEA的Maven项目在修改时报java.lang.OutOfMemoryError: PermGen space异常
  3. SAP内向交货详解 Details on SAP inbound delivery
  4. 计算机及网络的概念,网络的概念是什么意思,以及计算机网络概念的引入
  5. 比较DataTable中新旧数据
  6. Round Numbers
  7. 深度模型压缩论文(02)- BlockSwap: Fisher-guided Block Substitution for Network Compression
  8. 机器学习教程 一-不懂这些线性代数知识 别说你是搞机器学习的
  9. 洛谷——P1568 赛跑
  10. 38 | 测试数据的“银弹”- 统一测试数据平台(下)
  11. Android进阶之利用Tablayout+ViewPager+Fragment实现神奇的滑动效果
  12. Chapter 20 磁场对电流的作用
  13. 计算机二级用的ms什么版本,计算机二级ms office用的哪个版本
  14. Day77 Java框架 SSH案例_ERP(十一)_CXF框架_红日物流BOS系统_ERP物流信息管理
  15. 计算机硕士工资一览表,2021年计算机硕士工资一览表.doc
  16. ps----高低频磨皮--------中性灰磨皮-----------双曲线磨皮
  17. 基于遗传算法的TSP和MTSP问题求解(python)
  18. android highcharts柱状图实例,Highcharts 基本柱形图
  19. 蓬莱与威海的几尊塑像
  20. JNA释放Memory对象分配的内存

热门文章

  1. 12v农用车发电机接线图_农用车12v发电机是交流还是直流?
  2. mac本mysql数据库不能正常启动的解决办法
  3. 删除火狐书签_在Firefox 3中还原您丢失/删除的智能书签文件夹
  4. Stay Hungry, Stay Foolish--中文翻译
  5. HP惠普打印机P1606 驱动安装不成功;
  6. 【GCN】在NLP中应用GCN的几种构图方法整理
  7. goland中编辑tpl文件不高亮没智能补全的问题
  8. 软硬合一燃爆金秋,TCL 9月曲面狂欢节买硬件送1.7亿免费内容
  9. 尊重兴趣,是尊重生命深处的本能
  10. 神奇而又震撼,沉浸式立体投影秀_数字体验_新浪博客