1. 目前的图床管理工具
在开始讲如何利用 Python 来实现我的需求之前 ,我有必要介绍下我的图床管理工具。
我在写文章的时候,主要用到三款工具:
-
Typora
:Markdown 文案的编辑 -
Snipaste
:非常好用的截图工具 -
PicGo
:非常人性的图床管理工具
其中今天的要参与的主角是 PicGo
它对当下主流的图床平台都提供了很好的支持
当我使用了 Snipaste
截图后,再按住快捷键(⌘ ⇧ P),就可以立即将你的图床上传至指定图床,并且将上传后的链接以 markdown 的图片格式复制到剪切板中,你可以直接粘贴使用。
3. 方案的设想
由于这一整工具,我已经使用了三年,各种操作都非常的熟悉,对他们我已经产生了极度的依赖,因此现在我想要实现自动加水印的功能,也一定是建立在这套工具的基础上完成的。
Snipaste 和 PicGo 本身都不支持自定义水印,也不提供第三方插件的开发入口。
Snipaste 和 PicGo 之所以能够在一起工作,是因为有了剪切板这个桥梁,因此想要实现自己的需求,只能从剪切板上寻找突破口。
多余的废话就不多说了,我直接说下我的方案:
-
在 Snipaste 将图像放入剪切板后
-
由我敲入自定义的热键去触发 Python 脚本去从剪切板中读取图像
-
然后使用 PIL 去给该图像加水印,重新放入剪切板中
-
接着利用 Python 脚本去自动化触发 PicGo 的快捷键
-
PicGo 被激活后,就能将带有水印的图片上传到图床
为了让你对这个方案,有一个直观的理解,我特地画