问题描述:

使用hexo与github.io展示博客,使用Typora编写博客的markdown文件。在编写md文件的过程中,图片可以在Typora以及VS Code中显示,但是无法在github.io网页上显示,只有残缺的图标,如下图所示:

解决方案:

右键打开网页源码,发现这么几行代码:

图中蓝色的,有下划线的部分应该是调用的图片地址,正常情况下点开会出现图片。

打开蓝色的链接“【作业】电子测量技术.assets/电子测量技术-du.jpg”,出现404界面,说明图片路径不存在。

那么,有没有一种链接,可以在网上打开呢?我的封面图可以正常加载,也就是说/img/xxx.jpg这个路径是有用的。于是发现https://dream-675.github.io/img/keben.jpg 这个地址果然存在图片。

于是在编写的时候换个思路,直接使用绝对地址,果然页面成功加载图片!

使用方法:

1、设置typora,文件-偏好设置-图像,并按照下图设置。

2、在编写markdown文件时,输入

1
<img src="https://你的仓库名.github.io/img/xxx.jpg" />

3、在blog目录下,git三连,发布的博客是可以正常显示图片的。

Note:
  1. 在之前的反复尝试中,经过了很多次的hexo generate && hexo deploy,因此图片被上传到了github库里的Img文件夹上,因此输入绝对地址有效。如果第一次编写博客,图片还未上传,使用这种绝对路径是没办法在typora里预览的。所以这并不是最好的解决方法,只是我尝试之后找到的唯一可行的方案。祝你没有遇到这些问题。
  2. 我还尝试过Typora设置相对路径为主,并且将图片复制到文件名的文件夹中;在config.hml文件搜索post_asset_folder: false改为true。(这个意思是在新建hexo new “twst” 博客时,生成博客名的文件夹,储存图片。)理论上,Typora把图像复制到“twst”的文件夹,应该是能用的,但是会显示下图的问题,有链接,点进去是404。相对路径需要../导航到到上一级,./导航到本级,可能不太符合hexo的语法(个人猜测)。
  3. 还有一种解决思路是PicGo自动部署图片,下载后发现图片上传失败,估计是配置的问题,暂时没搞明白。

总结下来,deepseek在我手里发挥不出太大的价值(我不太会总结问题喵)。B站和前人博客千岁。冷静思考不一样的解决方法万岁。


附录:常用git bash命令
bash
1
2
hexo new "your_blog_name"   #创建新博客
hexo clean && hexo generate && hexo deploy #hexo三连,清除缓存,生成文件,部署到github