不写一行代码,利用 ChatGPT 从 0 生成一个批量水印工具

4,951 阅读3分钟

本文首发于公众号 极客枫哥 ,日更分享各种好玩的软件、编程知识和个人成长故事

最近做的一些工作中需要将一个目录下的很多图片给批量加上水印,但是我又不会 ps。 于是就尝试了一下使用 ChatGPTpython 来生成一个批量水印脚本,效果还是很不错的。 首先来分析一下需求,一句话描述,就是给指定文件夹下的所有图片都加上水印,然后输出新的图片。 那么这个工具就应该有以下几个输入

  1. 文件夹路径
  2. 水印字体
  3. 水印文字内容
  4. 确定按钮

好了,然后简单整理一下 prompts, 直接扔给 ChatGPT image.png 生成的代码比较多,就不完全贴进来了。 然后我们创建一个 **index.py **文件,把代码贴进来,然后安装依赖,主要是依赖了 Pillow

pip install pillow

然后尝试运行一下

python index.py	

不出意外的话,就能看到下面的结果了,看起来还是像模像样的

image.png

不过我希望同一项的标签,文本框,按钮在一行,所以继续给 **ChatGPT**提要求

image.png

把代码复制下来,再次尝试继续运行一下,这样看起来就舒服多了

image.png

接下来我们解决字体的问题,字体的话我打算内置几个,就放在程序的根目录下,新建一个 fonts 文件夹,然后随便下载几个中文字体的 ttf文件,字体下载网站:www.fonts.net.cn/fonts-zh-1.…

image.png

然后我们继续让 ChatGPT 来读取 fonts 目录下的字体文件

image.png

虽然我给的提示词是读取 1.ttf,2.ttf,3.ttf,它还是很智能的从 fonts目录的遍历获取字体文件了

image.png

现在运行的效果是这样的了,已经可以成功的读取到字体了

image.png

我们来测试一下程序是不是能跑起来,创建一个 images目录,随便找几张测试图片放进去

image.png

然后选择图片文件夹,字体,输入水印文本

image.png

激动人心的时候到了,点击一下 Generate Watermark

image.png

显示是成功了,那么生成好的带水印图片在哪呢? 简单看一眼代码,不难发现是写在你所选择的目录下面,它又新建了一个images 目录

image.png image.png

果然生成了三张新的图片,我们点开看看,水印加好了没有

image.png

看到这个结果,我只想说一句 ChatGPT 牛逼,程序员要失业咯,哈哈 基本功能就已经实现了,但是对于不同大小的图片来说,如果能调整字体大小的话,就更好了,比如这几张示例图片的水印就太大了,都影响图片内容了

image.png

然后再来运行一下看看效果,是这样的

image.png

我们把字号改小一些,再来测试一下

image.png

看一下生成的图片,这个字号就好多了

image.png

最后,一般水印都是有旋转角度的,我们继续提问,然后修改代码,过程和代码就不贴了,跟上面的操作是一样的 最终实现的效果,如下图,打上了公众号名字的水印

image.png

整个操作下来,没有动手写一行代码,全都是通过和 ChatGPT 对话来不断调试生成的,可以给不会编程的小伙伴们提供一个思路,以后碰到这种需要重复性的劳动时,也可以利用现在的大模型能力来创造合适的工具,提高工作效率~