最近做的一些工作中需要将一个目录下的很多图片给批量加上水印,但是我又不会 ps。 于是就尝试了一下使用 ChatGPT 和 python 来生成一个批量水印脚本,效果还是很不错的。 首先来分析一下需求,一句话描述,就是给指定文件夹下的所有图片都加上水印,然后输出新的图片。 那么这个工具就应该有以下几个输入
文件夹路径水印字体水印文字内容确定按钮好了,然后简单整理一下 prompts, 直接扔给 ChatGPT
生成的代码比较多,就不完全贴进来了。 然后我们创建一个 index.py 文件,把代码贴进来,然后安装依赖,主要是依赖了 Pillow
pip install pillow然后尝试运行一下
python index.py不出意外的话,就能看到下面的结果了,看起来还是像模像样的
不过我希望同一项的标签,文本框,按钮在一行,所以继续给 ChatGPT 提要求
把代码复制下来,再次尝试继续运行一下,这样看起来就舒服多了
接下来我们解决字体的问题,字体的话我打算内置几个,就放在程序的根目录下,新建一个 fonts 文件夹,然后随便下载几个中文字体的 ttf文件,字体下载网站:www.fonts.net.cn/fonts-zh-1.…
然后我们继续让 ChatGPT 来读取 fonts 目录下的字体文件
虽然我给的提示词是读取 1.ttf,2.ttf,3.ttf,它还是很智能的从 fonts目录的遍历获取字体文件了
现在运行的效果是这样的了,已经可以成功的读取到字体了
我们来测试一下程序是不是能跑起来,创建一个 images目录,随便找几张测试图片放进去
然后选择图片文件夹,字体,输入水印文本
激动人心的时候到了,点击一下 Generate Watermark
显示是成功了,那么生成好的带水印图片在哪呢? 简单看一眼代码,不难发现是写在你所选择的目录下面,它又新建了一个images 目录
果然生成了三张新的图片,我们点开看看,水印加好了没有
看到这个结果,我只想说一句 ChatGPT 牛逼,程序员要失业咯,哈哈 基本功能就已经实现了,但是对于不同大小的图片来说,如果能调整字体大小的话,就更好了,比如这几张示例图片的水印就太大了,都影响图片内容了
然后再来运行一下看看效果,是这样的
我们把字号改小一些,再来测试一下
看一下生成的图片,这个字号就好多了
最后,一般水印都是有旋转角度的,我们继续提问,然后修改代码,过程和代码就不贴了,跟上面的操作是一样的 最终实现的效果,如下图,打上了公众号名字的水印
整个操作下来,没有动手写一行代码,全都是通过和 ChatGPT 对话来不断调试生成的,可以给不会编程的小伙伴们提供一个思路,以后碰到这种需要重复性的劳动时,也可以利用现在的大模型能力来创造合适的工具,提高工作效率~
作者:极客枫哥链接:https://juejin.cn/post/7387957756391800868