MarkDown添加图片

原文链接】:MarkDown添加图片的三种方式[作者:清风Python]

插图最基础的格式就是:

  • ![Alt text](图片链接 "optional title")

Alt text:图片的Alt标签,用来描述图片的关键词,可以不写。最初的本意是当图片因为某种原因不能被显示时而出现的替代文字,后来又被用于SEO,可以方便搜索引擎根据Alt text里面的关键词搜索到图片。
图片链接:可以是图片的本地地址或者是网址。
"optional title":鼠标悬置于图片上会出现的标题文字,可以不写。

一、插入本地图片

只需要在基础语法的括号中填入图片的位置路径即可,支持绝对路径和相对路径。
例如:

  • ![avatar](/home/picture/1.png)
  • ![avatar](./1.png)

在Windows的环境下,vscode等几种编译环境,如果填的是绝对路径,找不到文件,需要把文件放在当前目录下面。[待补充]

二、插入网络图片

只需要在基础语法的括号中填入图片的网络链接即可,现在已经有很多免费/收费图床和方便传图的小工具可选。
例如:

将图片存在网络服务器上,非常依赖网络。

三、把图片存入markdown文件

用base64转码工具把图片转成一段字符串,然后把字符串填到基础格式中链接的那个位置。

基础用法:

  • ![avatar](data:image/png;base64,iVBORw0......)

这个时候会发现插入的这一长串字符串会把整个文章分割开,非常影响编写文章时的体验。如果能够把大段的base64字符串放在文章末尾,然后在文章中通过一个id来调用,文章就不会被分割的这么乱了。高级用法
比如:

  • ![avatar][base64str]
  • [base64str]:data:image/png;base64,iVBORw0......

最后,base64的图片编码如何得来?

如果图片过大,这样生成的的base64字符串会过长,可以对图片进行无损压缩
1、使用python将图片转化为base64字符串

    import base64
    f=open('222.PNG','rb') #二进制方式打开图文件
    ls_f=base64.b64encode(f.read()) #读取文件内容,转换为base64编码
    f.close()

    file=open('332.txt','wb')
    file.write(ls_f)
    file.close()
    print(ls_f)#直接输出有时候会显示不全

2、 base64字符串转化为图片

    import base64
    #bs='iVBORw0KGgoAAAAN.....==' # 太长了省略
    f=open('332.txt','rb')
    imgdata=base64.b64decode(f.read())
    file=open('333.PNG','wb')
    file.write(imgdata)
    file.close()
原文地址:https://www.cnblogs.com/meiguhuaxian/p/12503429.html