解决Typora笔记上传到CSDN上图片无法显示的问题
解决Typora笔记上传到CSDN上图片无法显示的问题
- 一、发现问题
- 二、分析问题
- 三、解决问题
- 图床介绍
- 所需工具
- PicGo软件安装操作
- 下载安装PicGo
- 配置PicGo
- 设置Typora
- 四、总结
一、发现问题
当我们使用Typora这款强大的Markdown编辑器记录笔记时,经常会遇到一个让人困扰的问题:在将笔记上传到CSDN博客或者其他网站上后,图片无法正确显示。这不仅会大大降低我们的效率,还可能给他人理解我们的内容带来困难。如下图所示:
二、分析问题
因为我们在本地Typora插入图片时,图片路径写的时本地的绝对路径,如
。当我们要将全文直接从Typora复制粘贴CSDN时,CSDN无法识别出我们的本地绝对路径,所以会造成图片无法显示的问题。
三、解决问题
解决方案:我们将图片通过Typora自动上传到网上的某个地址,这里也就可以引出今天的主角 —— 图床
,即可解决我们图片无法显示的问题。
图床介绍
-
Gitee
- 我在最开始的时候是使用的这种办法,因为它是免费的。但是在2022年05月份的时候Gitee官方关闭了这一功能,至此该方式就无效了。
-
Github
- 这种方式也是免费的,但是国内访问速度太慢了,就不做演示了。
-
阿里云的OSS
- 专业、快速、价格也便宜,我使用的也是这种方式。
所需工具
-
PicGo
- PicGo是一款开源的图片上传工具,专为Markdown编辑器、博客平台和其他应用程序设计。它允许用户快速、便捷地将本地图片上传至图床,并生成可供分享的图片链接。这些链接可以被直接插入到Markdown文档、博客文章或其他在线内容中,确保图片可以在任何地方正确显示。
- PicGo支持丰富的图床类型,包括但不限于:七牛、腾讯云、阿里云、GitHub等。
- 除了提供图床上传功能,PicGo还内置了图片压缩、文件命名、历史记录管理等实用工具,让用户能够更加方便地处理和管理上传的图片。它还支持批量上传、拖拽上传、剪贴板上传等多种上传方式,大大提升了用户的上传效率。
-
阿里云账号
-
进入阿里云的官网,先注册一个账号即可。
-
最上方点击
产品
-存储
-对象存储OSS
。 -
进入对象存储OSS的界面后,划到界面底部,找到
标准存储
点击进入。 -
进入界面后,进行如下配置:
- 商品类型选择:OSS资源包
- 资源包类型选择:标准 - 本地冗余存储
- 地域选择:中国内地通用
- 标准 - 本地冗余存储规格选择:40GB
- 购买时长选择:半年或者1年,根据自己的意向进行选择
- 因为我已经购买过此产品所以有红色提示。
-
开通成功后,这里会显示
管理控制台
,然后点击进入 -
找到并点击蓝色按钮 -
创建Buckets
-
输入
Bucket名称
、地域
、选择读写权限
为公共读
,其余配置默认,然后点击确定即可。 -
点击头像,选择
AccessKey管理
。 -
进入后选择继续使用
AccessKey
,然后点击创建AccessKey
,认证成功后,记得保存好自己的ID和Secret!!!!!!
我们的阿里云OSS部分的操作就完成了!
-
PicGo软件安装操作
下载安装PicGo
进入下载地址,找到合适的安装包(我下载的是2.3.1版本的)点击进行下载即可。(Github的服务器在国外,所以访问和下载会慢一点)
下载好安装包后,点击安装即可,安装路径建议不要做修改使用默认即可,不然可能会导致软件无法使用。
配置PicGo
- 下载好之后,打开PicGo,在左侧导航中找到
PicGo设置
,勾选上你所使用的图床
- 然后在
PicGo设置
中找到设置Server
,并点击进入
- 这里弹出的窗口,默认配置即可,有的时候
设置监听端口号
那里会自动改为366771
,我们必须将其改为36677
!!!
- 在左侧导航栏中找到
图床设置 - 阿里云OSS
,然后进行以下的设置,最后点击确定
将其设为默认图床
即可。- 设定KeyId:创建Bucket时的
AccessKey ID
- 设定KeySecret:创建Bucket时的
AccessKey Secret
- 设定Bucket:创建Bucket时的名称
- 确定存储区域:这里按照阿里云OSS上Bucket列表中的信息填写即可
- 其余配置,均不需要进行配置
- 设定KeyId:创建Bucket时的
- 我们点击左侧导航栏中的
上传区
,进行图片上传测试。
显示上传成功,即说明我们已经配置成功了!!!
设置Typora
- 打开Typora,点击
设置
-偏好设置
- 点击左侧导航栏中的图像,选择上传图片,勾选
对本地位置的图片应用上述规则
对网络位置的图片应用上述规则
,上传服务选择PicGo(app)
,然后点击验证图片上传选项
。
- 这里报错了,然后我回头看了下配置,发现没有
配置PicGo路径
,我以为它当时会自动匹配路径,这里就感觉不是很友好了在用户体验方面。最后配置路径后,验证上传成功!!!
四、总结
通过本文的介绍,我们详细探讨了如何使用PicGo解决Typora笔记上传到CSDN上图片无法显示的问题。通过配置PicGo工具,我们可以将Typora笔记中的图片轻松上传至对应的图床,并获取可访问的图片链接,从而确保我们的笔记在CSDN博客上能够正确显示图片。
感谢您的阅读,如果您对本文内容有任何疑问或建议,欢迎在下方留言!
相关文章:

解决Typora笔记上传到CSDN上图片无法显示的问题
解决Typora笔记上传到CSDN上图片无法显示的问题 一、发现问题二、分析问题三、解决问题图床介绍所需工具PicGo软件安装操作下载安装PicGo配置PicGo 设置Typora 四、总结 一、发现问题 当我们使用Typora这款强大的Markdown编辑器记录笔记时,经常会遇到一个让人困扰的…...
Vue3.0+Echarts (可视化界面)
Vue3.0Echarts (可视化界面) 1. 简介2. 安装2.1 下载安装Node.js2.2 全局下载项目脚手架2.3 创建项目 1. 简介 2. 安装 2.1 下载安装Node.js 2.2 全局下载项目脚手架 以管理员身份执行 npm install -g vue/cli vue --version2.3 创建项目 vue crea…...
编程语言的未来:探索技术进步的轨迹
编程语言的未来:探索技术进步的轨迹 随着科技的飞速发展,编程语言在计算机领域中扮演着至关重要的角色。它们是软件开发的核心,为程序员提供了与机器沟通的桥梁。然而,未来的技术进步将如何影响编程语言的走向呢?让我…...

SOLIDWORKS使用技巧——SOLIDWORKS草图绘制时一定要完全定义
SOLIDWORKS草图的定义状态有多种,按是否报错区分,如下: 1. 正常状态:欠定义、完全定义; 2. 错误状态的:过定义、悬空、无解; 其中,错误状态需要修复,不然会影响模型重…...

网络类型之GRE和MGRE和NHRP
GRE-通用路由封装 是一种简单的三层VPN封装技术,属于虚拟的点到点网络类型 优点:支持IP 网络作为承载网络、支持多种协议、支持IP 组播,配置简单,容易布署。 缺点:缺少保护功能,不能执行如认证、加密、以…...
uniapp获取日期
1.使用new Date()方法获取系统今天的日期,显示格式为:2023-10-28 <template><view class"content">{{date}}</view> </template> <script>export default {data() {return {date: new Date().toISOString().sl…...
编码和解码的未来之路
hello,我是小索奇。在计算机科学的世界中,编码和解码是无处不在的神奇力量,而现代技术的巅峰之一就是 ChatGPT。让我们一起探讨编码和解码如何与 ChatGPT 这一人工智能的杰作相互结合,打开了无限可能的数字世界之门。 ChatGPT的魔…...

Prometheus实战篇:Prometheus监控redis
准备环境 docker-compose安装redis docker-compose.yaml version: 3 services:redis:image:redis:5container_name: rediscommand: redis-server --requirepass 123456 --maxmemory 512mbrestart: alwaysvolumes:- /data/redis/data: /dataport:- "6379:6379"dock…...

Vue2.Hello World
步骤: 准备容器引包(开发版本/生产版本)创建实例new Vue()添加配置项 el指定挂载点data提供数据 准备容器 就是新建一个div标签 引包 vue2版本中文文档:https://v2.cn.vuejs.org/v2/guide/ 尝试 Vue.js 最简单的方法是使用 …...

【单片机项目实战】温度控制系统
本项目的主要作用是实现温度调控,通过设定一个预定的温度值,实现实时检测外界温度,当外界温度小于预定值时,电机正转,实现降温效果;当外界温度大于预定值时,电机反转,实现升温效果&a…...

SpringMVC-视图
SpringMVC中的视图实现了View接口,作用是渲染数据,将Model中的数据展示给用户。render是渲染方法,可以看到渲染的视图是一个View类型的对象。 SpringMVC视图的种类有很多,默认有转发视图和重定向视图。 如果配置了Thymeleaf视图解…...

【React系列】Hook(一)基本使用
本文来自#React系列教程:https://mp.weixin.qq.com/mp/appmsgalbum?__bizMzg5MDAzNzkwNA&actiongetalbum&album_id1566025152667107329) 一. 认识hook 1.1. 为什么需要hook Hook 是 React 16.8 的新增特性,它可以让我们在不编写class的情况下…...
算法训练营Day28
#Java #贪心 开源学习资料 Feeling and experiences: 这周来到了贪心算法,简要概述: 贪心算法是一种在每个步骤中都采取最优解(即,在当前看来最好的解)的算法设计策略。它通常用于求解优化问题。这种方…...
鸿蒙OS应用开发之日期选择
前面学习了时间选择组件,实现了时间的选择,这样非常方便用户进行时间的输入,通过手动就可以输入时间,比直接文本输入要省不少时间,特别对于手机这样单手操作的设备,更加重要了。因此,日期的输入工作也不能落后,本文将要学习日期选择组件,这样就可以实现日期通过手上下…...
Mysql 查看表注释或字段注释
查看所有表的注释 SELECT table_name 表名, table_comment 表说明 FROM information_schema.TABLES WHERE table_schema ‘数据库名’ ORDER BY table_name 查询所有表及字段的注释 SELECT a.table_name 表名, a.table_comment 表说明, b.COLUMN_NAME 字段名, b.column_commen…...

MySQL InnoDB引擎
1、逻辑存储结构 2、架构 a. 内存结构 Change Buffer的意义是什么? 与聚集索引不同,二级索引通常是非唯一的,并且以相对随机的顺序插入二级索引。同样,删除和更新可能会影响索引树中不相邻的二级索引页,如果每一次都操作磁盘&am…...

C++完成Query执行sql语句的接口封装和测试
1、在LXMysql.h 创建Query执行函数 //封装 执行sql语句 if sqllen 0 strlen获取字符长度bool Query(const char*sql,unsigned long sqllen0); 2、在LXMysql.cpp编写函数 bool LXMysql::Query(const char* sql, unsigned long sqllen){if (!mysql)//如果mysql没有初始化好{c…...
C:宏:编程风格:井号与define之间的空格
在这一篇中有提到,井号与define之间空格,可能导致搜索上的一些问题。 https://mzhan017.blog.csdn.net/article/details/135289451 今天看到有专门做这个空格的修改: https://sourceware.org/git/?pglibc.git;acommitdiff;hfcf70d4114db9ff…...

django websocket
目录 核心代码 consumers.py from channels.generic.websocket import WebsocketConsumer from channels.exceptions import StopConsumer import datetime import time from asgiref.sync import async_to_sync class ChatConsumer(WebsocketConsumer):def websocket_conne…...

HackTheBox - Medium - Linux - Bagel
Bagel 今天我开始了《Red Team Development and Operations A Practical Guide》的学习,保持学习,后面差不多到时机后就学CRTOⅡ Bagel 是一款中等难度的 Linux 机器,其特点是电子商店容易受到路径遍历攻击,通过该攻击可以获取应…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...

自然语言处理——Transformer
自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效,它能挖掘数据中的时序信息以及语义信息,但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN,但是…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...