安装 KaTeX 插件

Hexo 社区提供了 hexo-filter-katex 插件,能自动处理公式渲染:

1
npm install hexo-filter-katex --save

配置 Hexo 全局文件

在 Hexo 根目录的 _config.yml 中添加以下配置:

1
2
3
4
5
6
7
katex:
# 开启全局渲染(无需在每篇文章中声明)
global: false # 建议设为 false,按需在文章头启用
# 排除不需要渲染的元素(可选)
exclude:
- blockquote
- code

修改文章 Front-matter

在需要渲染公式的文章头部添加 katex: true:

1
2
3
4
5
---
title: 测试文章
date: 2025-01-01
katex: true
---

解决 Markdown 语法冲突

Hexo 默认的 Markdown 渲染器 (hexo-renderer-marked) 会与 KaTeX 的 _ 和 \ 冲突,更换渲染器:

1
2
npm uninstall hexo-renderer-marked --save
npm install hexo-renderer-markdown-it --save

在 _config.yml 中添加配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# Markdown-it config
markdown:
render:
html: true # 不转义 HTML 内容 # 转义 HTML 内容,使标签作为文本输出
xhtmlOut: false # 必须使用完全的 XHTML 代码,换行必须为 <br/> # 不必必使用完全的 XHTML 代码,换行可以为 <br>
breaks: true # 每次会车换行相当于一个 <br/> 标签 # Pa每次会车换行会被忽略
linkify: true # 类似链接的文本,作为链接输出 # 类似链接的文本,依然作为文本输出
typographer: true # 替换常见的排版元素 # 不替换常见的排版元素
quotes: '“”‘’' # 'single'、"double" 变成 ‘single’、“double” # 'single'、"double" 变成 “single”、«single»
plugins:
- markdown-it-abbr
- markdown-it-footnote
- markdown-it-ins
- markdown-it-sub
- markdown-it-sup
anchors:
level: 2 # 生成 Heading ID 的标题等级
collisionSuffix: 'v' # Heading ID 重复时,数字的后缀
permalink: true # 则创建一个锚标记,除标题外还有一个固定链接
permalinkClass: header-anchor # 用于固定链接锚标记的样式
permalinkSymbol: # 用于固定链接标记的符号
1
2
3
4
5
markdown:
plugins:
- markdown-it-katex
anchors:
level: 2

KaTeX and MathJax Comparison Demo
生成公式或图片工具:
https://www.jianshu.com/p/588ab3d22eb8
https://dora-cmon.github.io/posts/95c5c5d2/
https://sheepsparks.cn/2025/02/04/Hexo博客框架学习/
https://www.luogu.com.cn/article/4a81e2tt