背景介绍

书写markdown笔记时,如何处理图片,实在是有些棘手的问题。每一张图都保存在当前文件夹?

每张图都自己重命名?每次上传到cnblogs博客都需要一张一张拖动?markdown已经非常成功

的实现了样式与内容的分离,但是图片是二进制文件,说什么也不可能嵌入到纯文本文件里的。

不过本文将介绍一种方案,把所有本地的图片存放在一个固定的绝对路径里,软件自动随机重命名

图片,不会导致文件名重复,并且利用腾讯云COS,在腾讯服务器上建立图床,完美实现,本地.md

文档与线上markdown博客,无缝连接。

准备工具

统一把需要准备工具的东西放在这里,随后逐步会介绍每项工具的作用。

vnote(markdown编辑器) https://github.com/tamlok/vnote

COSBrowser https://cloud.tencent.com/document/product/436/11366

vnote图片路径配置

首先下载并安装vnote,在设置界面里设置好图片存放的外部文件夹(绝对路径),如下图所示。可以看到虽然是

windows平台但是文件的路径分割符,不是用撬棍(),而是正常的斜线D:/as4k/xmd-img/_v_images/,这样

配置以后,不论是使用类似QQ截图软件,还是直接在资源管理器中复制粘贴图片到vnote编辑器中,我们所有的图

片都会自动放到我们配置好的绝对文件路径中,在编辑器中生成的路径是下面这样

![](D:/as4k/xmd-img/_v_images//1535811877_16848.png)

效果就像下面这样

上图有一个文件名是带中文明显与其它文件名不一样,这是因为在往vnote中复制图片的时候,

修改了文件名导致,建议最好直接使用随机文件名即可,如果需要自定义图片标识,可以放到

图片的中括号里。

到这里,想必有markdown使用经验的读者都会感受到,单凭强大的复制粘贴图片到编辑器中的功能,

这款vnote编辑器有尤其使用价值了,毕竟我们移动.md,再也不用担心里面的图片因为路径

不正确,从而无法正常显示的问题了,当然这还不是本篇文章的重点,不使用vnote编辑器也无妨,

重点是接下来的腾讯云COS的应用。

使用腾讯云COS搭建图床

大家不要一看到图床就蒙圈了,图床就是一张图片使用网址的形式来表示而已。

打开https://cloud.tencent.com/product/cos,创建一个自己腾讯云COS储铁桶,功能是免费的,

只是有流量限制,使用自己的QQ号登录即可,大致流程如下图

在腾讯COS上创建完毕自己的存储桶之后,就相当于已经拥有了一个在线存储文件的平台,就像百度网盘一样,

所不同的是每个文件都对应一个URL网址。我们知道,在markdown编辑器中,添加图片使用本地文件和网络图片

地址都是可以的。在线往腾讯COS上传图片就是鼠标点点点的操作,不多说了,大家可以自行体验下,可以想象

如果每个文件都需要打开浏览器在线上传,麻烦程度不言而喻,因此我们使用COSBrowser,这款腾讯官方提供的

上传工具来上传文件。

使用COSBrowser同步本地和服务器上的图片

首先在这里https://console.cloud.tencent.com/cam/capi,获取API密钥,就是用来验证用的。

打开COSBrowser软件,输入密钥后,成功登录。下面重点来了,到目前位置我们的图片都在本地,格式如下

![](D:/as4k/xmd-img/_v_images//1535813612_9080.png)

现在只要把图片通过COSBrowser软件,简单的复制上传到存储服务器上,最重要的是图片文件名不变,在我们把文档

发布到 线上博客的时候,使用替换功能即可简单的把本地图片替换成网络URL地址形式的图片。如果用的是vnote编

写markdown的, 只需进入阅读模式,一张张拖放到COSBrowser软件,即可实现上传,也可以定位到图片到目录,

按时间排序图片,批量上传 图片到COSBrowser软件上。

图片在腾讯COS上的地址如下图所示

本篇博客即是我第一次使用,腾讯COS同步图片到服务器上,本篇博客的图片都在这里

粘贴到服务器上效果如下

对比之后可以看到,线上图片与本地图片唯一的不通之处就在于,前缀不同。

只需把本地D:/as4k/xmd-img/_v_images//前缀

替换成https://md-img-1252230138.cos.ap-beijing.myqcloud.com/

即可实现本地图片与线上图片无缝连接。

参考资料

腾讯云对象存储(COS)官方文档

https://cloud.tencent.com/document/product/436/7751

COS 标准存储的用户免费额度

https://cloud.tencent.com/document/product/436/6240

搭建markdown图床-腾讯云COS的更多相关文章

  1. Hexo 博客图片添加至图床---腾讯云COS图床使用。

    个人博客:https://mmmmmm.me 源码:https://github.com/dataiyangu/dataiyangu.github.io 腾讯云官网 登录注册 创建存储桶 进入上面的存 ...

  2. 腾讯云COS体验

    其实这篇文章本来是推荐COS的,写了一半发现COS的免费额度取消了,2019年之后的开通的用户免费6个月,老用户不受影响,这还让我怎么推荐啊?!写都写了,删掉岂不是白浪费时间? 都怪你!腾讯云! 起因 ...

  3. costool - 腾讯云cos快捷工具。

    目录 使用截图 使用方法 配置文件 安装方法 其他 一个腾讯云cos(对象存储)非官方快速上传和下载的工具,使用官方go-sdk二次开发.可以用于以下场景. 备份一些配置文件,比如.bashrc .v ...

  4. 微信小程序/网站 上传图片到腾讯云COS

    COS简介: 腾讯云提供的一种对象存储服务,供开发者存储海量文件的分布式存储服务.可以将自己开发的应用的存储部分全部接入COS的存储桶中,有效减少应用服务器的带宽,请求等.个人也可以通过腾讯云账号免费 ...

  5. 利用腾讯云COS云对象存储定时远程备份网站

    版权声明:本文由张戈 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/942851001487125915 来源:腾云阁 h ...

  6. 威联通(NAS)搭建个人图床

    名词解释: 图床:一般是指储存图片的服务器,有国内和国外之分.国外的图床由于有空间距离等因素决定访问速度很慢影响图片显示速度.国内也分为单线空间.多线空间和cdn加速三种. 更详细的内容,请左转查看百 ...

  7. 腾讯云COS对象存储

    一.腾讯云COS 腾讯云对象存储 COS 是一种存储海量数据的分布式存储服务.COS 提供了多种对象的存储类型:标准存储.低频存储.归档存储. 二.为什么要使用TA 便宜: 个人用户有6个月的免费使用 ...

  8. Chevereto免费图床搭建教程 | vps搭建免费图床教程

    Chevereto免费图床搭建教程 | vps搭建免费图床教程 本文首发于:https://chens.life/How-to-build-a-free-image-bed.html 前言 自从有了个 ...

  9. PicGo + Gitee +Typora实现markdown图床

    目录 1. PicGo安装 2.Gitee配置 3.配置PicGo 3.Typora的设置 网上有一些很详细的教程,我这里只记录要点,其余部分按以下教程步骤来就行. 1. PicGo安装 国内下载可能 ...

随机推荐

  1. mybatis由浅入深day02_7查询缓存_7.2一级缓存_一级缓存应用

    7 查询缓存 7.1 什么是查询缓存 mybatis提供查询缓存,用于减轻数据压力,提高数据库性能. mybaits提供一级缓存,和二级缓存. 一级缓存是SqlSession级别的缓存.在操作数据库时 ...

  2. Python 进阶(二)模块

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW4AAABpCAIAAACVsl7UAAAgAElEQVR4nO2993vUxho2/P4r33XwSr

  3. Android中的渐变

    LinearGradient的用法 LinearGradient linearGradient; linearGradient = new LinearGradient(0, 0, 0, getHei ...

  4. java生成webservice方法

    参考: https://note.youdao.com/ynoteshare1/index.html?id=c10324bb3b794baece3d2ae9faadc5c1&type=note

  5. 《C++ Primer Plus》第9章 内存模型和名称空间 学习笔记

    C++鼓励程序员在开发程序时使用多个文件.一种有效的组织策略是,使用头文件来定义用户类型,为操纵用户类型的函数提供函数原型,并将函数定义放在一个独立的源代码文件中.头文件和源代码文件一起定义和实现了用 ...

  6. 广义表操作 (ava实现)——广义表深度、广义表长度、打印广义表信息

    广义表是对线性表的扩展——线性表存储的所有的数据都是原子的(一个数或者不可分割的结构),且所有的数据类型相同.而广义表是允许线性表容纳自身结构的数据结构. 广义表定义: 广义表是由n个元素组成的序列: ...

  7. MQTT的学习研究(十一) IBM MQTT 简单发布订阅实例

    package com.etrip.push; import com.ibm.mqtt.MqttAdvancedCallback; import com.ibm.mqtt.MqttClient; im ...

  8. OpenStack Cinder 与各种后端存储技术的集成叙述与实践

    先说下下loop设备 loop设备及losetup命令介绍 1. loop设备介绍 在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者也可以说是仿真设备.它能使我们 ...

  9. 条件注释判断IE浏览器版本

    lt,lte,gt,gte分别表示什么 lt:小于当前版本 lte:小于或等于当前版本,包括本身 gt:大于当前版本 gte:大于或等于当前版本,包括本身 使用格式 // 如IE9以下(不包括IE9加 ...

  10. 【原创】asp.net内部原理(三) 第三个版本 (最详细的版本)

    前言: 今天继续吧这个系列补齐,这几天公司的项目比较忙,回到家已经非常的累了,所以也没顾得上天天来这里分享一些东西和大家一起探讨,但是今天晚上我还是坚持打开电脑,分享一些asp.net生命周期的知识, ...