本文主要介绍如何通过Python在图片上的指定位置添加文字,主要利用两个库OpenCV和PIL。
1.安装OpenCV
pip install opencv-python
2.利用putText方法来实现在图片的指定位置添加文字
putText(img, text, org, fontFace, fontScale, color, thickness=None, lineType=None, bottomLeftOrigin=None)
在使用putText方法在图片上添加文字的时, 无法直接添加中文 和 无法导入字体文件 ,接下来我们利用另一库PIL来解决这个问题。
1.安装PIL库
pip install Pillow
2.添加文字信息
通过加载ttc格式的字体文件,就可以设置显示文字的字体。
我们平时要给图片加水印,但是又不会PS,免不了着急上火,还找不到人,想想还是得自己学一手~
而且图片很多的话,PS还是挺慢的,用Python一键生成即可,效率杠杠的。
准备工作
环境的话我这里使用的是 Python 和 pycharm
如果添加一张图片的水印,两行代码就实现了。
本次使用的模块是 filestools , 第三方模块,咱们需要手动安装一下。
win+r打开搜索框,输入cmd 按确定后弹出命令提示符窗口,输入 pip install filestools 即可安装成功。
代码解析
1、单张图片添加水印
模块导入
怎么使用 filestools 模块呢?
首先导入模块里面的一个方法,watermarker ,点上 marker ,然后 import add_mark
add_mark 已经包含了很多方法
file 是添加水印照片 ,mark 使用哪些字作为水印,out 保存的地方 ,color 颜色,size 水印字体的大小,opacity 不透明度,space 字体间距,angle 旋转角度。
假设我要给图片添加上:人生苦短, 快学python
咱们把图片和文字加进去即可,代码如下:
2、批量填加多张图片水印
批量给图片添加的话,需要用到 OS 模块。
导入一下
用os模块读取文件夹所有内容 ,使用 files 接收。
打印一下
现在所有文件名字都有了
通过 for 循环遍历都打印出来
然后将文件添加进去,我们读取的是 img_1 里面的内容,那就把这个文件里的内容都传进去,保存数据的时候,都会保存在这里面。
再改一下透明度
我这里改成0.5
这样就清晰多了~
做电商的朋友,经常需要给自己的产品添加上自己店铺的logo,有的时候批量导入产品后,需要单个的给图片加上logo标签,或者活动信息
现在我们可以用python制作批量给图片添加指定logo工具
废话不多说,我们直接上源码
效果展示,我们给下面这两张图片添加一个公司设计做好的logo,添加之前如下所示
最后附上工具以及源码地址
链接: https://pan.baidu.com/s/1WYoOJAF9VdOpet2olL74rQ
提取码:5hfe