介绍
自己特别喜欢写东西,写作的时候难免要插入图片。
Typora 是一款 markdown 编写软件,使用体验非常的好,在这里安利一下。
每次使用 Typora写 markdown 的时候,只能把图片保存在本地,非常的不方便。如果把这个 markdown 文件发给其他人,那么图片就无法观看了,体验非常的差,偶然逛知乎的时候看到了如何在 Typora 中使用图床,感觉很有必要使用,于是就摸索了一个早上,踩了很多坑,然后搞定了。
我先讲一下本次博文的大概过程和原理:
- 首先你要使用 Typora 来编写 markdown 文件。
- 其次 Typora 支持直接把图片保存到本地。
- 如果要使用 Typora 的自动上传图片功能,我们需要有(1)一个在线图床,我使用的是腾讯云对象存储(2)一个能把图片自动上传到图床的工具。这个工具是第三方工具,和 Typora 无关
- 我们要做的就是选择合适自己的图床和图片上传工具。本次重点说的是如何选择图片上传工具。
曲折过程
根据教程[1], 我首先去详细阅读了一下这个教程,发现这个是 Windows版本的,我们必须使用 Mac 版本的,而且我们要使用腾讯云对象存储作为图床,理由是以前做项目用过,比较熟悉,而且现在的图床动辄就要实名认证,很烦的!
现在网上很多教程只讲具体怎么操作,不说清楚原理,没有泛化能力,对于其他读者来说成本很高。所以往往我们需要去阅读官网文档。
试坑Step1 ipic
读了好久的文档,发现要6快钱,一年72,想想有点不太合理。放弃。
IPic是国人开发的,但是如果选择以腾讯云对象存储为图床,这个功能是要收费的,2020-05-05, 起码现在是,一个月6元,我觉得不值。
最重要的是作者没有提前告知使用腾讯云对象存储是要收费的,非常的讨厌。
试坑Step2 PicGo-Core
被告知 MacOS 的安全策略,无法安装 PicGo-Core (Linux / Windows)的预编译的二进制文件,我只能通过通过node package manager (Requires NodeJS runtime) 安装 PicGo-Core (需要 node.js 运行时),写好配置文件以后,结果因为我不了解node, 在最后测试的时候,莫名其妙出了问题,按照官方文档一步一步来,却被告知,出现了下面的错误。
各种使用 CSDN 和 google 找答案,比如CSDN吧,直接莫名其妙丢你一个命令,胆大的我以前就直接拿到自己电脑上跑了,现在感觉这种博客非常的不靠谱,放弃CSDN。
我去 GitHub 上的 Typora 的官方 Issues 仓库里找问题答案,发现没有人遇到这种问题。我以为是环境变量 Path 没有及时更新,执行 source 命令,注销用户,重启均无效,浪费了40分钟,最后只能放弃PicGo-Core。
这个浪费了我很久的时间,我的教训是,不要轻易碰自己不懂的东西,因为碰到深坑,真的一时半会解决不了。
成功 upic
逐一排除了前两项,我选择继续测试 upic, 阅读了一下文档时候,顺利的达成了自己想要的目标。
详细过程我就不详细描述了,文档写的很好,请阅读参考[3],里面清楚明白。
再次感叹过程的程序员不容易啊,很多国外的网页打开的特别慢,使用个东西要非常的有耐心。
其他
防盗链
云对象存储下载是要流量的,安全起见可以打开防盗链,即只能从指定网站请求并且打开。如果有个无聊的人写一个脚本定时请求这个图片,那么很快流量就被消耗完了。
Typora的使用-如何保存图片
我建议把所有的文章的图片保存到统一的一个目录里去,这样移动这个 markdown 文本也不会导致文章图片无法显示,如果有需要再把图片上传到图床上去。
免费的可能不一定是安全的
UPic是免费的,但未必是安全的,好在upic 源代码是开源的,但是不一定保证他提供的 release 版本是OK的。姑且只能相信了。。。还好注册 腾讯云对象存储没花多少钱。感谢作者。过两天捐赠10元表示感谢~。
参考
[1]最强markdown编辑器typora图床教程-七牛版【我必须说明,这是针对windows版本的,Mac不行】
https://zhuanlan.zhihu.com/p/137426939
[2] 官方文档 Typora Upload Images
https://support.typora.io/Upload-Image
[3] upic 官方文档
https://blog.svend.cc/upic/
[4] Ipic 文档
https://toolinbox.net/iPic/
[5]腾讯出品的MacOS 截图软件 Jietu, 比系统自带好用,支持编辑图片
https://jietu.qq.com/
[6]对 Jietu 的介绍
https://zhuanlan.zhihu.com/p/31028043