Hexo 公式渲染测试
这篇文章只使用 Typora 官方文档给出的两种写法:行内公式用单个美元符号,独立公式用单独成行的两个美元符号。 不使用图片或其他公式定界符,便于单独检查数学渲染。
在 Typora 中测试行内公式前,请先到「偏好设置 → Markdown → 数学公式」启用「行内公式(Inline Math)」,然后重启 Typora。独立公式与行内公式的开关不同,所以可能出现“独立公式正常、行内公式显示源码”的情况。
Hexo 是否显示数学公式,还取决于博客安装的数学渲染插件及主题配置;Typora 显示正常不代表 Hexo 一定正常。
1. 最简单的独立公式
$$
a+b=c
$$
预期:上面单独显示一条排版后的公式,没有原始美元符号。
2. 分数与上下标
$$
J(w,b)=\frac{1}{2m}\sum_{i=1}^{m}\left(f_{w,b}(x^{(i)})-y^{(i)}\right)^2
$$
预期:分数、求和号、上下标正常显示。这是线性回归的代价函数。
3. 行内公式
这里的 $x$ 是输入,$w$ 是权重,$b$ 是偏置。线性回归的预测写成 $f_{w,b}(x)=wx+b$,公式前后仍是普通文字。
预期:公式与文字在同一行,上下标正常,不显示美元符号。若第 1、2 节正常而本节显示源码,先检查 Typora 的「行内公式」开关并重启。
4. 逻辑回归公式
先计算加权和:
$$
z=\sum_{j=1}^{n}w_jx_j+b
$$
再经过 sigmoid 函数:
$$
f_{w,b}(x)=\frac{1}{1+e^{-z}}
$$
5. 较长的公式
$$
J_{\mathrm{reg}}(w,b)=-\frac{1}{m}\sum_{i=1}^{m}\left[y^{(i)}\log f^{(i)}+(1-y^{(i)})\log(1-f^{(i)})\right]+\frac{\lambda}{2m}\sum_{j=1}^{n}w_j^2
$$
预期:公式能排版;如果只是在手机或窄窗口溢出,则重点检查主题样式和长公式的横向滚动设置。
6. 代码块对照
下面是原始写法示例,应当显示源码,不应排版成公式:
1 | 行内:$f_{w,b}(x)=wx+b$ |
结果判断
| 现象 | 优先检查 |
|---|---|
| Typora 独立公式正常,行内公式显示源码 | Typora 的「行内公式」开关,启用后重启 |
| Typora 正常,Hexo 全部显示源码 | Hexo 数学渲染插件和主题配置 |
| 简单公式正常,长公式溢出 | 主题 CSS 或页面宽度 |
| 代码块中的公式也被排版 | 插件对代码块的排除规则 |
参考:Typora 官方数学公式说明。





