Markdown文件上传到博客图片处理

在本地编写Markdown文章并准备上传到博客园时,经常会遇到的一个挑战是本地图片无法直接显示,因为它们存储在本地文件系统中。为了解决这个问题,有两种常见的策略:

1.第一种策略是将图片上传到图床,并在文章中直接使用图片的外部链接。这种方法的好处是,只要用户有网络连接,图片就可以在任何地方正常显示。不过,这也意味着你需要维护一个外部的图床,并且需要确保图床的可靠性和持久性。

2.第二种策略是利用dotnet-cnblog这样的工具。当你完成文章编写后,可以通过这个工具将文章中引用的所有本地图片直接上传到博客园,然后自动替换为博客园的图片地址。这种方式的好处是无需额外维护图床,上传后的文章和图片将形成一个整体,与直接在博客园编辑器中上传图片的效果无异。同时,这也确保了图片的可靠性和持久性,因为它们将直接存储在博客园的服务器上。

这两种策略各有利弊,但如果你希望简化流程并减少维护成本,那么使用dotnet-cnblog工具将是一个不错的选择。

dotnet-sdk下载

下载.NET5.0环境,注意一定是5.0,因为dotnet-cnblog只支持.NET5.0

下载地址:https://dotnet.microsoft.com/zh-cn/download/dotnet/5.0

下载完成后安装。安装完成后,cmd中输入dotnet --info,查看我们安装的版本:

安装dotnet-cnblog

cmd中输入以下命令:

dotnet tool install -g dotnet-cnblog

初始化工具

输入以下命令:

dotnet-cnblog blog



输入需要博客园相关信息:博客园id、用户名、访问令牌,一般博客园id和用户一样。

用户名和访问令牌可以在这里查看:https://i.cnblogs.com/settings#enableServiceAccess



没有令牌就创建一个

如果写的有问题能够:使用dotnet-cnblog reset 重置初始化操作

上传图片

输入命令:

dotnet-cnblog proc -f 文件路径



此时文件同路径下生成了一个文件,文件名为”原文件名-cnblog,md“,这个文件里的图片已经使用了博客园的地址,所以打开这个文件,ctrl+a,ctrl+c,到博客园的markdown编辑模式下ctrl+v,完美显示图片。

参考资料

https://www.cnblogs.com/liuyuan1227/p/14639116.html

Markdown文件上传到博客图片处理的更多相关文章

  1. 本地Markdown文件上传到博客

    本地Markdown文件上传到博客 参考:https://www.cnblogs.com/ccylhw/p/13954153.html 1.Typora 最漂亮的写作APPhttps://www.ty ...

  2. HTML大文件上传(博客迁移)

    Html大文件上传:跳转 通过github和hexo进行搭建博客,主要是在没有网络的时候,可以本地访问,并支持markdown语法. 新博客地址:跳转

  3. 如何实现一个 markdown 图片粘贴上传的博客后台系统

    如何实现一个 markdown 图片粘贴上传的博客后台系统 js 实现 drag & drop / copy & paste image uploader MongoDB 设计文档对象 ...

  4. Typora笔记上传到博客

    Typora笔记上传到博客 Markdown是一种轻量级标记语言,排版语法简洁,让人们更多地关注内容本身而非排版.它使用易读易写的纯文本格式编写文档,可与HTML混编,可导出 HTML.PDF 以及本 ...

  5. js插件---IUpload文件上传插件(包括图片)

    js插件---IUpload文件上传插件(包括图片) 一.总结 一句话总结:上传插件找到真正上传位置的代码,这样就可以知道整个上传插件的逻辑了, 找资料还是github+官方 1.如何在js中找到真正 ...

  6. Webform 文件上传、 C#加图片水印 、 图片验证码

    文件上传:要使用控件 - FileUpload 1.如何判断是否选中文件? FileUpload.FileName - 选中文件的文件名,如果长度不大于0,那么说明没选中任何文件 js - f.val ...

  7. afinal 文件上传、下载、图片加载实例

    // Afinal框架讲解 public class AfinalActivity extends FinalActivity { @ViewInject(id=R.id.bt_afinal_load ...

  8. Android 普通okhttp、okhttp utils执行 post get请求,文件上传下载、请求图片

    public class OKHttpActivity extends Activity implements View.OnClickListener { public static final M ...

  9. android批量文件上传(android批量图片上传)

    项目中多处用到文件批量上传功能,今天正好解决了此问题,在此写出来,以便日后借鉴. 首先,以下架构下的批量文件上传可能会失败或者不会成功:   1.android客户端+springMVC服务端:服务端 ...

  10. 【软件学习】如何将Typora中的本地图片上传到博客

    1. 配置方法 下载软件: 点击程序输入博客信息进行配置: 进行偏好设置: 2. 配置中出现的一些问题 解决方法:

随机推荐

  1. 一文聊清楚Redis主从复制原理

    本地缓存带来的挑战 分布式缓存相比于本地缓存,在实现层面需要关注的点有哪些不同.梳理如下: 维度 本地缓存 集中式缓存 缓存量 受限于单机内存大小,存储数据有限 需要提供给分布式系统里面所有节点共同使 ...

  2. OSG开发笔记(三十六):osg3.4.0基于windows平台msvc2017x64编译器编译并移植Demo

    前言   本篇编译osg3.4.0的msvc2017x64版本,之前使用的都是mingw32版本.   OSG编译 步骤一:下载解压   下载3.4.0版本.   步骤二:使用cmake配置      ...

  3. Echarts 颜色管理

    1.Echarts的颜色设计 Echarts的颜色的设置分为两种:色盘和具体颜色 色盘适合做全局设置,因为他里面有多个颜色,通俗的说色盘就是颜色预设值列表,色盘统一使用color属性进行配置. 而具体 ...

  4. 搭建一个文件存储服务器minio,实现文件存储

    搭建一个文件存储服务器minio,实现文件存储 Minio是一个开源的.自托管的对象存储服务器,它提供了类似于云存储服务的功能.你可以使用Minio搭建自己的私有云存储解决方案,或者作为公共存储服务的 ...

  5. C# 获取两经纬度之间的距离

    C# 获取两经纬度之间的距离 迷恋自留地 //地球半径,单位米 private const double EARTH_RADIUS = 6378137; /// <summary> /// ...

  6. 『玩转Streamlit』--片段Fragments

    在 Streamlit 应用开发中,Fragments组件是一种用于更精细地控制页面元素更新和显示顺序的工具. 它允许开发者将内容分解成多个小的片段,这些片段可以按照特定的顺序或者逻辑进行更新,而不是 ...

  7. qrcode根据本地数据生成二维码第一次显示跨页面后显示异常

    最近写二维码的时候,突然想起之前项目遇到过的一个问题,网上也没有这方面解答,想到大家今后可能也会遇到这类问题,在此记录下来,希望对你们有所帮助,大佬们不喜勿喷,qrcode配合画布canvas本地生成 ...

  8. Less使用备忘录

    定义 Less (Leaner Style Sheets 的缩写) 是一门向后兼容的 CSS 扩展语言,动态样式语言. 使用方式 直接引入less.js文件 好处:能获取客户端的数据,从而进行进一步的 ...

  9. postman -- 把上一接口的响应值作为下一接口的入参

    一.方法

  10. tailscale安装教程

    tailscale安装失败可能是由于以下原因之一导致的: 系统兼容性问题:tailscale可能不支持你的操作系统版本或架构.请确保你的系统满足官方的最低要求,并尝试使用官方提供的正确版本进行安装. ...