Markdown + 阿里云图床

Markdown 文档与多工具使用 AliyunOss 图床。

引言:虽然我一直在用 Snipaste,但我主要使用截图后贴图功能,可以很方便进行对比查看,其编辑样式也比较好看。但是 Snipaste 不支持滚动截图,而且编辑样式没有阴影。其实滚动截图倒是不常用,而且 FSCapture 就足够。只是我一直想找一个能截图自带阴影的截图工具。用了 Winsnap,感觉阴影感一般。似乎 Ashampoo Snap 也可以,但没深入使用。Snagit 编辑功能比较强大,就是太笨重。最后选择了 ShareX,不仅可以添加自定义阴影,还有圆角等图像效果,最强的还是有截图上传等众多功能。另外用了一下截图后贴图的 Setuna,不好用。体验了无边框的图片浏览器 Vieas 和 MassiGra,都还不错,不过最后还是回归了 Honeyview。当然还有很多优秀的截图看图工具,在此只是选择了符合自己需求的而已。

AliyunOss配置图床

注册并登录,在阿里云对象储存OSS页面选择 折扣套餐,如下图购买一年只需要 9 元:

购买完成后回到首页,点击右上方的控制台,进入个人控制台,在左侧找到 对象储存OSS 并点击进入:

选择左侧 Bucket列表 -> 创建Bucket,弹出的 OSS版本控制 是否开通看个人选择,然后进行参数填写。注意 读写权限 一项要选择 公共读,然后点击确定进行创建:

创建成功后鼠标放置在左上角头像上,在弹出的窗口中选择 访问控制:

选择左侧 用户 -> 创建用户,然后填写参数,勾选编程访问:

复制显示的 keyidkeySecret ,以下各种配置都需要使用。可以先保存为 TXT 文件,关闭后不再显示,若遗失点击进入用户可以重新创建:

创建用户后选择用户添加权限,勾选 AliyunOSSFullAccess 后点击确定:

创建到此就完成了,可以在 Bucket 创建文件夹放置文件。

注意购买的只是储存空间,还需要购买流入流出的流量,使用频率不高,可以按量计算,只需要充值几块钱即可。

Typora+PicGo+阿里云图床

其实首先我是在接触 MD 语法,插入图片的时候想这个问题的。因为手机上我使用纯纯写作等支持 MD 语法的 APP 进行记录,考虑很多 APP 对于图片的备份都不太友好,因此选择了阿里云对象储存作为图床,使用咕咚云图作为上传到图床的媒介,可以很方便地上传并生成插入链接并复制到剪切板。于是在 PC 端使用 Typora + PicGo + 阿里云图床的方式,直接拖拽图片进 Typora 自动上传到阿里云图床。

Typora 内有三种配置 PicGo 的方式,由于我之前已经下载了 PicGo,因此这里我选择 PicGo(app):

插入图片时选项可以勾选前两个,也可以只勾选第一个。勾选第二个的话,同样的图片,你如果使用第二次,它也会上传覆盖。但是如果是其他地方的网络图片,就可以上传到你自己的图床。

再在 PicGo 上进行阿里云图床配置 (阿里云图床设置以及其他图床配置直接搜索即有相关内容):

详细参数设置参考:阿里云 oss 搭建图床以及使用 PicGO 上传图片到图床

设置完成后直接将图片拖曳或者粘贴到 Typora 即可。

也可以选择 PicGo-Core (command line),其与 PicGo(app) 区别如下:

机翻过来就是:

相比之下还是选择 PicGo-Core (command line) 更好,其配置也很简单,参考 最强 markdown 编辑器 typora 图床教程 - 阿里云版 即可。

写到这里的时候我又重新改成第二种方式了,因为我属实不喜欢 PicGo 一直后台运行。

Sharex+阿里云图床

首先设置截图命名规则。以下是我截图文件命令规则:

根据 ossutil 本地上传文件ossutil 下载及配置地址 下载并配置好 ossutil 参数。

选择合适的地方(例如 ossutil 文件夹)新建 bat 文件,内容填写如下:

@ECHO OFF
::获取传入参数input赋值给para1,此参数由sharex生成,位于sharex所在文件夹内,
::例:"D:\Install\Portable\ShareX\ShareX\Screenshots\2021-01\LYKISUN_2021-01-01_1609499598.png"
Set para1=%1
::将input参数的"替换为空,即去除双引号并赋值给p1
set p1=%para1:"=%
::获取路径最后的图片第55位至倒数第1位,即图片名称赋值给p2。不同路径注意修改
set p2=%para1:~55,-1%
::获取截图所在目录赋值给p3。不同路径注意修改
set p3=%para1:~1,54%
::运行命令:1.切换至ossutil64所在目录;2.上传阿里云命令;3.将md表达式输出至剪切板,注意我的图片是储存在Bucket的ossutil文件夹中;4.退出,隐藏窗口时必须加上才能完成命令。不同命令用&&连接
cmd /k "cd /d D:\Install\ForCode\ossutil64 && ossutil64 cp %p1% oss://kisun-pic/ossutil/ && echo ![%p2%](https://kisun-pic.oss-cn-shenzhen.aliyuncs.com/ossutil/%p2%) | clip && exit"

MarkDown 文档中以 ![]() 方式插入如图片不支持大小和位置修改,但是 MD 支持 Html ,可以使用以下格式控制图片大小和左右居中位置:

<div align="center"><img src="path" width="300" height="300" alt="name"/></div>

因此上述 Bat 文件中最后的命令也可以修改为:

@ECHO OFF
set para1=%1
set p1=%para1:"=%
set p2=%para1:~37,-1% ::由于我修改了图片保存路径,因此这里以及下方改变了参数
set p3=%para1:~1,36%
cmd /k "cd /d D:\Install\ForCode\ossutil64 && ossutil64 cp %p1% oss://kisun-pic/ossutil/ && exit"
set/p="<div align=center><img src="https://kisun-pic.oss-cn-shenzhen.aliyuncs.com/ossutil/%p2%" width="600" height="300"></div>"<nul | clip

缺点就是图片大小需要自己调整,不然直接需要删除 width 和 height 两个参数,因此无特殊要求的话,用第一种方式就可以了。不过感觉以 Html 方式插入的图片显示更友好。

然后打开 sharex 根据下图配置:

然后设置截图后动作:

勾选删除本地文件可以在执行动作后删除本地文件。

最后进行快捷键设置。进行截图后就会运行 Bat 文件将截图上传到阿里云图床的 ossutil 文件夹,并将插入 md 的链接格式自动输出到剪切板,然后直接在 MD 文件中粘贴即可:

当然,如果你第一步使用 Typora 设置了 PicGo,你也可以不必设置 ShareX,直接勾选截图后动作里面的复制到剪切板,然后直接在 Typora 里面粘贴即可,Typora 会运行 PicGo 自动上传。当然,ShareX 还支持相当多的其他上传工具,体验一下就知道其强大了。自定义上传器设置需要使用阿里云oss API,没有找到相关教程,整不明白,于是放弃。

VSCode+PicGo+阿里云图床

使用 VSCode 不用插件就能编辑和预览 MD 文件,也可以安装 Markdown All in OneMarkdown Preview EnhancedMaridown pdf 等插件使用更加 丰富的功能。要使用图床上传图片可以安装 PicGo 插件。

在 VsCode 搜索并安装 PicGo 插件,在插件配置处按如下配置:

其中 AreaCustom Url 要根据自己创建 Bucket 时选择的地区修改。

修改 Pic Bed:Currentaliyun

当然喜欢使用 Sublime Text 编辑器的话也能配置 MD 编辑和实时预览,但是预览需要使用浏览器这一点我不太喜欢,因此没有选择我最常用的 ST3 来编辑 MD 文件。


参考链接

阿里云 oss 搭建图床以及使用 PicGO 上传图片到图床

最强 markdown 编辑器 typora 图床教程 - 阿里云版

VSCode+PicGo+AliyunOss 搭建 Markdown 图床

Upload Images

对象存储 OSS

命令行工具 ossutil

目录