Typora的Github主题美化
[!note]
Typora的Github主题进行一些自己喜欢的修改,主要包括:字体、代码块、表格样式
美化前:
美化后:
一、字体更换
之前便看上了「中文网字计划」的「朱雀仿宋」字体,于是一直想更换字体,奈何自己拖延症作祟,直到今天才开始行动。
关于「中文网字计划」
「中文网字计划」是一个致力于优化中文字体在互联网中应用的开源项目,通过Web Font技术为开发者提供便捷、免费的中文字体解决方案。其核心特点包括:
- 字体分包技术:将庞大的字体文件切割为小型静态分包,利用全球CDN加速加载,解决中文字体文件体积大、加载慢的问题;
- 丰富字体库:收录了霞鹛文楷、京華老宋体等众多字体,支持在线预览和按需调用;
- 开源工具链:提供字体分析工具(如
font-analyze
)、在线分包工具(在线切割)及NPM包(@konghayao/cn-font-split
),方便开发者自定义字体优化; - 全字符集渲染:支持OpenType特性,可自动按页面内容加载所需字符区间,兼顾渲染速度与完整性。
项目官网为https://chinese-font.netlify.app/,GitHub仓库见chinese-free-web-font-storage。
需注意部分字体授权信息需自行确认,建议优先选用明确开源授权的字体(如霞鹛文楷)。
中文网字计划是支持直接使用它提供的CDN的,但是由于不知道怎么在主题的CSS中使用,于是选择使用更为直接的方法:从中文网字计划的Github仓库中下载下来这个字体的.ttf
文件,然后在CSS中使用该字体。
具体实现步骤
- 下载字体文件
-
下载自己想要的字体文件,例如朱雀仿宋;
-
并将字体文件放到合适的目录位置,这个文件路径之后要用得到,例如我就是直接放到主题css文件的同一目录下,故引用的时候就直接使用相对路径
./字体文件名
。
- 修改主题的css文件
- 引入本地字体
/* 添加以下代码,引入本地字体 */
@font-face {/* 自定义字体名称 */font-family: "自定义字体";/* 字体文件路径 */src: url('./ZhuqueFangsong-Regular.ttf') format('truetype');font-weight: normal;font-style: normal;
}
- 将需要的内容设置成自定义字体
/* 将 body 设置为自定义字体 */
body {font-family: "自定义字体", "Open Sans", "Clear Sans", "Helvetica Neue", Helvetica, Arial, 'Segoe UI Emoji', sans-serif;color: rgb(51, 51, 51);line-height: 1.6;
}/* 将标题设置为自定义字体 */
h1,
h2,
h3,
h4,
h5,
h6 {position: relative;margin-top: 1rem;margin-bottom: 1rem;font-weight: bold;line-height: 1.4;cursor: text;font-family: "自定义字体", "Open Sans", "Clear Sans", "Helvetica Neue", Helvetica, Arial, 'Segoe UI Emoji', sans-serif;
}/* 将段落、表格文字设置成自定义字体 */
p,
blockquote,
ul,
ol,
dl,
table {margin: 0.8em 0;font-family: "自定义字体", "Open Sans", "Clear Sans", "Helvetica Neue", Helvetica, Arial, 'Segoe UI Emoji', sans-serif;
}
可以根据自己的需要自行设置
- 重启Typora
不出意外的话,重启便能看到更换好字体之后的效果了
二、代码块装饰
希望能添加仿mac窗口风格的代码块上檐,觉得很好看。
类似下图:
已备条件
先前在美化Hexo博客站的时候子在网上找到了大佬在Hexo的Fluid主题中实现仿mac窗口风格的方法,即通过``自定义CSS,并提供了
stylus代码`:
.highlightbackground: #21252bborder-radius: 5pxbox-shadow: 0 10px 30px 0 rgba(0, 0, 0, .4)padding-top: 30px&::beforebackground: #fc625dborder-radius: 50%box-shadow: 20px 0 #fdbc40, 40px 0 #35cd4bcontent: ' 'height: 12pxleft: 12pxmargin-top: -20pxposition: absolutewidth: 12px
有了stylus代码,直接让 AI 帮忙改一下就可以用在这里了
利用条件
我们需要将这段 Stylus 代码适配到 Typora 的 GitHub 主题中,以下是修改后的 CSS 实现和详细说明:
/* 在原有 .md-fences 样式基础上修改 */
.md-fences {background: #21252b;border-radius: 5px !important;box-shadow: 0 10px 30px 0 rgba(0, 0, 0, .4) !important;padding-top: 30px !important;position: relative; /* 新增定位上下文 */margin: 15px 0; /* 保持原有外边距 */
}/* 添加 Mac 风格窗口按钮 */
.md-fences::before {content: ' ';position: absolute;top: 15px; /* 调整垂直位置 */left: 15px; /* 调整水平位置 */width: 12px;height: 12px;border-radius: 50%;background: #fc625d;box-shadow: 20px 0 #fdbc40, 40px 0 #35cd4b;z-index: 1; /* 确保按钮显示在代码上方 */
}/* 调整代码内容位置 */
.md-fences .code-tooltip {margin-top: -20px; /* 补偿顶部 padding */
}/* 保持代码区域高度 */
.md-fences pre {padding-top: 10px; /* 调整代码与按钮的间距 */
}
需要在你原来的主题 CSS 中找到 .md-fences
相关样式,替换或修改为上述代码。以下是主要修改点说明:
-
定位上下文:
添加position: relative
为伪元素定位提供基准 -
窗口按钮实现:
使用::before
伪元素创建三个圆形按钮,通过:box-shadow
创建多个按钮- 精确的定位调整按钮位置
- z-index 确保按钮可见
-
样式覆盖:
使用!important
覆盖 Typora 默认样式:border-radius: 5px !important; box-shadow: 0 10px 30px 0 rgba(0, 0, 0, .4) !important;
-
布局调整:
- 增加
padding-top
为按钮预留空间 - 通过负 margin 保持代码区域位置
- 调整代码内容的 padding
- 增加
最终效果:
- 代码块顶部会有 macOS 风格的红黄绿按钮
- 代码块带有阴影和圆角
- 按钮位置适配代码块布局
- 保持原有代码高亮样式
如果需要调整按钮位置或颜色,可以修改以下参数:
top
/left
值:控制按钮位置background
值:红色按钮颜色box-shadow
值:黄色和绿色按钮颜色及位置width
/height
:按钮大小border-radius
:按钮圆角程度
建议在修改后通过实际预览微调具体数值,不同主题可能需要不同的位置补偿值。
对
box-shadow: 0 10px 30px 0 rgba(0, 0, 0, .4) !important;
的解释:给元素添加一个向下偏移的半透明模糊阴影,具体参数解析如下:
0
:水平偏移量(h-shadow)
表示阴影在水平方向不偏移
10px
:垂直偏移量(v-shadow)
表示阴影向下偏移10像素(负值会向上偏移)
30px
:模糊半径(blur)
阴影边缘会产生30像素的模糊渐变效果,数值越大越模糊
0
:扩散半径(spread)
阴影大小与元素原始尺寸一致(正值扩大阴影,负值收缩)
rgba(0, 0, 0, .4)
:阴影颜色
使用黑色(#000)且透明度为40%(0.4),通过透明度实现阴影深浅控制
!important
:优先级标记
强制覆盖其他可能存在的阴影样式规则最终效果表现为:元素下方会呈现一个向下延伸10px、模糊范围30px、半透明黑色(类似雾状)的阴影层,常用于创建卡片浮起效果或增强界面层次感。
[!note]
2025.2.22更新
主要修改:
- 顶部仿mac的背景颜色变为深色,下方的代码部分背景颜色不变
- 上次改动使得代码块的行高发生变化,过于高了,现将行高改的合适一些
要实现 顶部仿 Mac 按钮区域为深色背景,而下方代码区域保持浅色,需要通过 分层背景控制 和 伪元素定位 来实现。以下是具体修改方案:
修改后的完整 CSS 代码
/* 核心修改部分 */
.md-fences {/* 移除整体深色背景 */background: transparent !important;/* 保持原有容器样式 */border-radius: 5px !important;box-shadow: 0 10px 30px 0 rgba(0, 0, 0, .1) !important;padding-top: 25px !important;padding-bottom: 2px !important;position: relative;margin: 15px 0;/* 添加浅色边框分隔 */border: 3px solid #e7eaed;
}/* 新增:顶部深色背景条 */
.md-fences::after {content: '';position: absolute;top: 0;left: 0;right: 0;/* 与 padding-top 一致 */height: 25px;/* 原深色背景 */background: #21252b;/* 仅顶部圆角 */border-radius: 5px 5px 0 0;/* 确保在按钮下方 */z-index: 0;
}/* 调整 Mac 按钮层级 */
.md-fences::before {/* 原有按钮样式不变 */content: ' ';position: absolute;top: 10px;left: 10px;width: 10px;height: 10px;border-radius: 50%;background: #fc625d;box-shadow: 20px 0 #fdbc40, 40px 0 #35cd4b;margin-top: 0px;/* 提升到顶部背景条之上 */z-index: 2;
}/* 恢复代码区域背景色 */
.md-fences pre {/* 原浅色背景 */background: #f8f8f8 !important;margin: 0;padding: 10px 15px !important; /* 需删去 *//* 底部圆角 */border-radius: 0 0 5px 5px;position: relative;/* 确保在顶部背景条之上 */z-index: 1;
}
关键修改说明
通过 三层结构 实现分层控制:
-
顶部深色背景条 (
::after
伪元素)- 高度与容器的
padding-top
一致(30px) - 仅设置顶部圆角,与容器圆角匹配
- 使用
z-index: 0
作为底层
- 高度与容器的
-
Mac 风格按钮 (
::before
伪元素)- 提升
z-index: 2
确保按钮显示在顶部背景条之上 - 保持原有定位和样式
- 提升
-
代码内容区域 (
pre
标签)- 显式设置浅色背景
#f8f8f8
- 添加
z-index: 1
覆盖顶部背景条 - 底部圆角避免背景色溢出
- 显式设置浅色背景
按照上面修改好之后,发现代码块的行高高的离谱,原本以为是行高太大的问题,于是就直接加了一行行高控制(如下所示):
/* 新增行高控制 */
line-height: 1.5 !important; /* 合适的范围:1.4-1.6*/
发现没有效果,进而才想到了可能是padding
的问题,于是便尝试将代码块的padding
控制元素给注释掉,发现行高恢复正常了,问题找到,只要删去padding即可。
上面的代码是先直接让deepseek帮忙写的,事实证明:AI确实能提高编程速度,但仍不能完全代替人类进行工作。
效果验证
区域 | 背景色 | 特性 |
---|---|---|
顶部按钮区域 | 深色(#21252b) | 包含 Mac 风格红黄绿按钮 |
代码内容区域 | 浅色(#f8f8f8) | 保持原有代码样式和行间距 |
容器边框 | 浅灰色(#e7eaed) | 分隔顶部深色和代码区域 |
调整细节(按需修改)
- 顶部背景条高度:修改
.md-fences::after
的height
值(需同步调整容器的padding-top
) - 代码区域边距:调整
.md-fences pre
的padding
值 - 圆角一致性:检查
border-radius
数值是否与容器匹配
最终效果应实现 顶部深色按钮区 + 下方浅色代码区 的视觉分层,同时保持代码内容的原有样式。
三、表格样式修改
将原主题的表格样式改成
三线表
样式
以下是修正后的三线表完整CSS代码:
将原CSS中的相关样式用以下替换即可
/* ================= 三线表完整样式 ================= */
table {border-collapse: collapse !important;border-spacing: 0 !important;border: none !important;margin: 1.5em 0 !important;
}/* 顶线 */
table {border-top: 2px solid #333 !important;
}/* 底线 */
table {border-bottom: 2px solid #333 !important;
}/* 表头线(中间线) */
thead tr:first-child th {border-bottom: 1.5px solid #666 !important;
}/* 单元格样式 */
td, th {border: none !important;padding: 8px 12px !important;background: transparent !important;
}/* 表头文字样式 */
th {font-weight: 600 !important;color: #2c3e50 !important;
}/* 移除斑马纹 */
tr:nth-child(2n) {background: transparent !important;
}/* 调整对齐方式 */
th {text-align: center !important;
}
td {text-align: left !important;
}
修改要点说明:
-
明确三条线的实现方式:
- 顶线:
table
元素的顶部边框(2px) - 中间线:表头单元格(th)的底部边框(1.5px)
- 底线:
table
元素的底部边框(2px)
- 顶线:
-
颜色层级:
- 顶/底线使用深灰色(#333)
- 中间线使用稍浅的灰色(#666)
-
增强可读性:
- 表头文字加粗(600字重)
- 表头文字颜色加深(#2c3e50)
- 单元格增加横向间距(8px→12px)
实际效果预览:
__________________________ 顶线(2px)姓名 年龄 职位
__________________________ 中间线(1.5px)张三 28 工程师李四 35 设计师
__________________________ 底线(2px)
验证方法:
- 在Typora中插入3行2列的表格
- 观察是否呈现:
- 顶部粗线
- 表头下方细线
- 底部粗线
- 检查是否没有其他干扰线条
如果希望调整线条粗细,可以修改以下参数:
- 顶/底线粗细:
2px
→ 推荐范围 1.5px-3px - 中间线粗细:
1.5px
→ 推荐范围 1px-2px
相关文章:
Typora的Github主题美化
[!note] Typora的Github主题进行一些自己喜欢的修改,主要包括:字体、代码块、表格样式 美化前: 美化后: 一、字体更换 之前便看上了「中文网字计划」的「朱雀仿宋」字体,于是一直想更换字体,奈何自己拖延症…...
计算机网络模型-TCP/IP协议簇
目录 1. OSI 参考模型 2. TCP/IP 5层协议簇 3. 数据传输过程 4. OSI模型vsTCP/IP模型 5. 工作设备和协议 1. OSI 参考模型 OSI 参考模型 OSI 参考模型 7层参考协议:同层使用相同协议,下层为上层提供服务 再往每一层填网络协议的时候,表…...
ros进阶——强化学习倒立摆的PG算法实现
项目地址:https://github.com/chan-yuu/cartpole_ws git clone https://github.com/chan-yuu/cartpole_ws依赖安装: xterm等 python3.8 torch等上一节中我们定义了很多ros工具,在这里我们将进行验证。 对于launch_robot_test.py来说&#x…...
BUU41 [GYCTF2020]FlaskApp1【SSTI】
题目: 加密处没啥事,但是解密的地方提交{{7*7}}就会返回报错界面,顺便把代码也爆出来了 text_decode base64.b64decode(text.encode()) 先将字符串 text编码为字节对象,然后使用 base64.b64decode 函数对这个字节对象进行 Base…...
pandas读取数据
pandas读取数据 导入需要的包 import pandas as pd import numpy as np import warnings import oswarnings.filterwarnings(ignore)读取纯文本文件 pd.read_csv 使用默认的标题行、逗号分隔符 import pandas as pd fpath "./datas/ml-latest-small/ratings.csv" 使…...
React + TypeScript 全栈开发最佳实践
React TypeScript 全栈开发最佳实践 一、环境搭建与项目初始化 node.js和npm的安装请参考我的文章。 1.1 脚手架选择与工程创建 # 使用Vite 5.x创建ReactTS项目(2025年主流方案) npx create-vitelatest my-app --template react-ts cd my-app npm in…...
RK3399 Android7双WiFi功能实现
在Android系统里面,WiFi功能STA和AP模式是互斥的,而现在越来越多的WiFi模组或者芯片能支持并发模式,即STA+P2P、STA+STA或者STA+AP模式组合。不管是单WiFi并发,还是双WiFi模组,想让STA和AP两个模式同时运行,对于Android7来说,是需要修改到系统源码,才能让APP层用Androi…...
前端包管理工具进化论:npm vs yarn vs pnpm 深度对比
前端包管理工具进化论:npm vs yarn vs pnpm 深度对比 一、工具定位与核心差异二、功能特性对比三、优缺点深度解析四、性能实测对比(示例数据)五、选型建议六、未来趋势 一、工具定位与核心差异 npm (Node Package Manager) Node.js 官方捆绑…...
绕过information_schema与order by注入以及seacsmv9注入
一:information_schema绕过 1,、sys数据库包含了许多视图,这些视图整合了来自information_schema和performance_schema的数据,攻击者可以利用这些视图来获取数据库结构信息。 -- 获取所有数据库名 SELECT DISTINCT table_schema FROM sys.schema_table_…...
在LangFlow中集成OpenAI Compatible API类型的大语言模型
一、背景与核心价值 从Dify换到这个langflow真的时各种的不适应啊。 就比如这个OpenAI Compatible API,这不应该是基本操作嘛? 算了,服了,习惯了就好了。咱闲言少叙,正片开始: LangFlow作为LangChain的可视化开发工具,其最大优势在于无需编写代码即可构建复杂的大模型…...
PING命令TTL解析
在 ping 命令中,TTL(Time to Live,生存时间) 是 IP 数据包的核心字段之一,用于控制数据包在网络中的生命周期。以下是针对 TTL 的简明解析: 1. TTL 的核心作用 防循环机制:TTL 是一个计数器&a…...
Hadoop 基础原理
Hadoop 基础原理 基本介绍Hadoop 的必要性Hadoop 核心组件Hadoop 生态系统中的附加组件 HDFSHDFS 集群架构HDFS 读写流程HDFS 写流程HDFS 读流程 NameNode 持久化机制 MapReduce底层原理示例 Hadoop 是一个由 Apache 基金会开发的分布式系统基础架构,主要解决海量数…...
蓝桥杯单片机基础部分——1.5基础模块代码升级
前言 之前的蓝桥杯单片机基础部分——1、基础模块代码发现有的同学不太会使,这样的话就给他们都封装一下函数,额外封装一下蜂鸣器和继电器,这就全了,到时候的逻辑只要没问题就没啥事了 LED灯模块 现在,给这里封装一个…...
PyTorch常用函数总结(持续更新)
本文主要记录自己在用 PyTorch复现经典模型 过程中遇到的一些函数及用法,以期对 常见PyTorch函数 更加熟练~ 官方Docs:PyTorch documentation — PyTorch 2.6 documentation 目录 数据层面 torch.sign(tensor) torch.tensor(np.eye(3)[y]) torch.on…...
Docker 常用命令大全
一、启动类 1. 启动 docker systemctl start docker 2. 关闭 docker systemctl stop docker 3. 重新启动 docker systemctl restart docker 4. docker 设置自启动 systemctl enable docker 5. 查看 docker 运行状态 systemctl status docker 6. 查看 docker 版本号等信息 docke…...
单片机裸机编程:状态机与其他高效编程框架
在单片机裸机编程中,状态机是一种非常强大的工具,能够有效管理复杂的逻辑和任务切换。除了状态机,还有其他几种编程模式可以在不使用 RTOS 的情况下实现高效的程序设计。以下是一些常见的方法: 1. 状态机编程 状态机通过定义系统…...
TCP,http,WebSocket
TCP(Transmission Control Protocol,传输控制协议)和HTTP(HyperText Transfer Protocol,超文本传输协议)都是网络通信中的重要协议,但它们在网络协议栈的不同层次上工作,各自负责不同…...
gotool在线工具集
1. 包含各种 sql 处理 2. 包含 json 处理 3. 包含 图片处理 4. 跨平台传输 gotool...
HBuilder X中,uni-app、js的延时操作及定时器
完整源码下载 https://download.csdn.net/download/luckyext/90430165 在HBuilder X中,uni-app、js的延时操作及定时器可以用setTimeout和setInterval这两个函数来实现。 1.setTimeout函数用于在指定的毫秒数后执行一次函数。 例如, 2秒后弹出一个提…...
ow rank decomposition如何用于矩阵的分解
1. 什么是矩阵分解和低秩分解 矩阵分解是将一个矩阵表示为若干结构更简单或具有特定性质的矩阵的组合或乘积的过程。低秩分解(Low Rank Decomposition)是其中一种方法,旨在将原矩阵近似为两个或多个秩较低的矩阵的乘积,从而降低复…...
2.3做logstash实验
收集apache日志输出到es 在真实服务器安装logstash,httpd systemctl start httpd echo 666 > /var/www/html/index.html cat /usr/local/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-patterns-core-4.1.2/patterns/httpd #系统内置变量 cd /usr/local/…...
JAVAweb之过滤器,监听器
文章目录 过滤器认识生命周期FilterConfigFilterChain过滤器执行顺序应用场景代码 监听器认识ServletContextListenerHttpSessionListenerServletRequestListener代码 过滤器 认识 Java web三大组件之一,与Servlet相似。过滤器是用来拦截请求的,而非处…...
IO进程 day05
IO进程 day05 9. 进程9. 9. 守护进程守护进程的特点守护进程创建步骤 10. 线程10.1. 线程的概念10.2. 进程和线程的区别10.2. 线程资源10.3. 线程的函数接口1. pthread_create-创建线程线程函数和普通函数的区别 2. pthread_exit3.线程资源回收函数join和detach的区别 获取线程…...
Mac 散热救星:Macs Fan Control,让你的苹果电脑“冷静”又安静!
各位果粉们,是不是经常遇到这样的烦恼:用着用着电脑,突然就发热卡顿,风扇狂转噪音大得跟拖拉机似的?别担心,今天给大家安利一款超实用的软件 —— Macs Fan Control,它可是让苹果电脑“冷静”又…...
警惕将“数据标注”岗位包装为“大数据工程师”充数
数据标注(Data Annotation)是人工智能和大数据产业链中的基础性工作,其核心任务是为原始数据添加标签或注释,使计算机能够识别和学习数据中的特征,从而训练出更精准的机器学习或深度学习模型。以下是具体解析及它与“大…...
C语言 —— 此去经年 应是良辰好景虚设 - 函数
目录 1. 函数的概念 1.1 库函数 1.2 自定义函数 2. 形参和实参 3. return 语句 4. 数组做函数参数 5. 嵌套调用和链式访问 5.1 嵌套调用 5.2 链式访问 6. 函数的声明和定义 6.1 单个文件 6.2 多个文件 7. static 和 extern 7.1 static 修饰局部变量 7.2 static 修…...
最新前端框架选型对比与建议(React/Vue/Svelte/Angular)
前端框架选型对比与建议(React/Vue/Svelte/Angular) 一、核心框架技术特性对比(基于最新版本) 维度React 19 25Vue 3.5 12Svelte 5 25Angular 19 5核心理念函数式编程、JSX语法、虚拟DOM渐进式框架、组合式API、模板语法编译时框…...
AOP基础-01.快速入门
一.AOP 对于统计每一个业务方法的耗时这一操作,如果再业务层的每一个方法前获取方法运行的开始时间,方法结束获取结束时间,然后计算执行耗时,那这样就太繁琐了。能不能定义一个模板方法,使得该方法能够在业务层的方法执…...
为什么MySQL选择使用B+树作为索引结构
B树是MySQL最常见的索引结构,大部分存储引擎都支持 B 树索引。 相对于其他竞争力强的数据结构,B树都有战胜它们成为大多时候MySQL选择使用索引结构的理由: 第一个强有力的竞争对手是B树: 1. B树每个节点都存储了完整的数据&…...
基于SSA-KELM-Adaboost(麻雀搜索优化的极限学习机自适应提升算法)的多输入单输出回归预测【MATLAB】
SSA-KELM-Adaboost 是一种结合了麻雀搜索算法(SSA)、核极限学习机(KELM)和Adaboost集成学习的复合回归预测模型。该模型通过参数优化与集成策略提升预测精度和鲁棒性,适用于复杂非线性回归问题。以下是其核心理论与…...
分享些常用的工具类
一、照片 1、Unsplash:https://unsplash.com/ 2、pixabay:https://pixabay.com/zh/ 二、壁纸 1、Wallpaper Engine 2、wallhaven:https://wallhaven.cc/ 3、极简壁纸:https://bz.zzzmh.cn/ 三、AI语音 1、微软Azure项目&…...
Apache SeaTunnel 构建实时数据同步管道(最新版)
文章作者 王海林 白鲸开源 数据集成引擎研发 Apache SeaTunnel Committer & PMC Member,Apache SkyWalking Committer,多年平台研发经验,目前专注于数据集成领域。 导读 在当今数字化快速发展的时代,数据已然成为企业决策…...
96.【C语言】解析预处理(4)
目录 5.条件编译 #ifdef 其他条件编译指令 #if 多个分支的条件编译 判断是否被定义 嵌套指令 6.头文件的包含方式 本地文件包含 库文件包含 嵌套文件包含 问题:头文件的重复包含 解决问题:避免头文件的重复包含 方法1:#pragma once 方法2:#ifndef、#define和#en…...
linux用户操作与权限
Linux的root用户 root用户(超级管理员) root用户拥有最大的系统操作权限。 普通用户的权限一般在其home目录内是不受限的,但是出来自己的home目录,仅有只读和执行权限。 su su命令切换到root账号 语法:su [-] [用户…...
Proof Beyond Boundaries: Hong Kong zkNight 活动精彩回顾
2 月 19 日,随着夜幕的降临,一场汇聚行业智慧与前瞻视野的高端主题活动 ——Proof Beyond Boundaries: Hong Kong zkNight,在香港铜锣湾 Vpoint 的 6/F 盛大启幕。本次活动由 ZEROBASE 主办,Techub News 承办,吸引了众…...
QT零基础学习之路(五)--自定义信号和槽
源码地址(优先更新):点击此处...
Pytorch实现之GIEGAN(生成器信息增强GAN)训练自己的数据集
简介 简介:在训练数据样本之前首先利用VAE来推断潜在空间中不同类的分布,用于后续的训练,并使用它来初始化GAN。与ACGAN和BAGAN不同的是,提出的GIEGAN有一个分类器结构,这个分类器主要判断生成的图像或者样本图像属于哪个类,而鉴别器仅判断图像是来自于生成器还是真实样…...
HTTP 动态报错码的原因和解决方法
目录 1xx(信息性状态码) 2xx(成功状态码) 3xx(重定向状态码) 4xx(客户端错误状态码) 5xx(服务器错误状态码) 参考文章 以下是 HTTP 动态报错码的常见原…...
单核处理器编程会简单很多的原因
乱序执行的本质:单核处理器的乱序执行(Out-of-Order Execution)允许指令动态调度以提升效率,但其核心原则是保持程序语义的单线程正确性。所有指令的最终提交(Retirement)必须严格按照程序顺序完成,以确保异常处理、中断和外部观察结果的正确性。 提交阶段的顺序性:尽管…...
C++之vector和list辨析
std::vector 和 std::list 是 C 标准库中两种常用的容器,它们都用于存储和管理元素集合,但在底层实现和性能特性上有显著的区别。 1. 底层实现 std::vector: 基于动态数组实现。元素在内存中是连续存储的。支持随机访问(通过下标访问元素&a…...
C++ 八股(整理记录)
1. 指针和引用的区别 定义与初始化: 指针:可以声明时不初始化,并且可以在之后指向任何同类型的变量。指针是一个变量,它存储的是另一个变量的地址。 int a 10; int* p; // 声明一个指向int的指针 p &a; // 将p指向变量a的…...
docker部署GPU环境
使用 Docker 部署 GPU 环境涉及到几个关键步骤,以下是详细步骤: 1. 安装 NVIDIA 驱动程序 确保你的系统已经安装了 NVIDIA GPU 驱动。这是使用 GPU 的前提条件。 2. 安装 Docker 和 nvidia-container-toolkit 首先,确保你已经安装了 Docker。然后,安装 NVIDIA Containe…...
单片机裸机编程-时机管理
对于 RTOS 实时操作系统,我们是通过 TASK(任务)进行底层操作的,这与裸机编程中的函数(fun)类似。不同的任务或函数实现不同的功能,在RTOS中,单片机有信号量、队列等不同任务之间的通…...
使用VScode开发STM32:基于CMake(包含标准库和HAL库工程)
使用VScode开发STM32:基于CMake(包含标准库和HAL库工程) 本教程使用VScode作为代码编辑工具、Cmake作为构建系统生成器、Make进行构建系统、使用arm-none-eabi-gcc进行交叉编译、使用OpenOCD作为代码下载与调试工具,最终搭建出适…...
Linux操作与权限2
查看权限控制信息 序号1,表示文件,文件夹权限控制信息 序号2,表示文件,文件夹所属用户 序号3,表示文件,文件夹所属用户组 12345678910d/l/-r/-w/-x/-r/-w/-x/-r/-w/-x/- 权限细节总共分为10个槽位 表格1&…...
解析第十一页
多选707、如图所示组网,SWA、SWB、SWC、SWD运行RSTP,则以下说法正确的是? A、可以在SWB的GE0/0/2端口开启边缘端口,让连接终端的接口快速进入转发状态 B、边缘端口收到BPDU之后会重新参与生成树的计算 C、可以在SWC的GEO/0/2端口开启边缘端口,让连接终端的接口快速进入转…...
SQL之order by盲注
目录 一.order by盲注的原理 二.注入方式 a.布尔盲注 b.时间盲注 三.防御 一.order by盲注的原理 order by子句是用于按指定列排序查询结果,列名或列序号皆可。 order by 后面接的字段或者数字不一样,那么这个数据表的排序就会不同。 order by 盲…...
阻止浏览器的默认缩放机制
在移动端浏览器中,当用户点击输入框(如密码输入框)时,页面可能会自动放大以提高可读性。这种行为通常是由于浏览器的默认缩放机制引起的。要阻止这种自动放大行为,可以采取以下几种方法: 使用 viewport 元…...
python 引用父目录:层级的模块
from pathlib import Path import sys 获取 project 目录 project_dir Path(file).resolve().parent.parent 将 project 目录添加到 sys.path 中 sys.path.append(str(project_dir)) 导入 support 模块 import support support.print_func(“Runoob”)...
实用:查找Linux进程调度统计信息的三个方法
实用:查找Linux进程调度统计信息的三个方法 在现代操作系统中,理解进程调度行为对于优化性能和解决瓶颈问题至关重要。本文将详细介绍如何在Linux系统中获取进程从调度队列中调入(enqueue)和调出(dequeue)…...