Hexo公式优化
方案1(也是最简单的方案):
不必理会配置文件及渲染器相关的任何东西,只需要注意复杂行间公式的保护,具体参考:Hexo支持LaTeX数学公式渲染 - KEVIN’S BLOG (kevinchu.top)
1.1 使用方法:
选择你想要使用的引擎(MathJax或KaTeX选其一),直接在markdown文章内容中添加引入对应引擎自动渲染js的代码即可(任意位置,建议放在内容首部或尾部),引入代码参考1.3。
1.2 代码保护
在markdown文档中对行间公式进行保护,方法来源于:结合MathType和MathJax在Hexo博客中插入数学公式 - 知乎 (zhihu.com)。
1 | {% raw%} |
显示效果为:
$$ \kappa \left( t \right) = \left\{ \begin{array}{l} \frac{1}{{\varepsilon + {{\left( {1 - \frac{t}{T}} \right)}^n}}},t \in \left[ {0,T} \right]\\ \frac{1}{\varepsilon },t \in \left( {T, + \infty } \right) \end{array} \right. \tag{1} $$当然,也可以参考其他方案:Hexo下mathjax的转义问题 | 天空的城 (shomy.top)
1.3 引入自动渲染的js代码
直接在编辑的文档中引入自动渲染的代码:
引入MathJax自动渲染脚本代码(需开启对$
分隔符的支持):
1 | <script> |
引入KaTeX自动渲染脚本代码:
1 | <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.8/dist/katex.min.css" integrity="sha384-GvrOXuhMATgEsSwCs4smul74iXGOixntILdUW9XmUC6+HX0sLNAK3q71HotJqlAn" crossorigin="anonymous"> |
1.4 存在的问题
2024-04-21 22:12:29
不知道什么原因,在使用该方法时我的行内公式全部默认不是斜体了,等知道怎么改再更新。
2024-04-21 23:07:47
发现之前卸载了所有的渲染器,重新下载默认渲染器hexo-renderer-marked后解决了行内公式不是斜体的问题,但公式相较于文字垂直方向没有居中对齐,公式相比于文字偏上,MarkDown文件转HTML后未出现任何问题。
2024-04-21 23:18:42
安装hexo-renderer-pandoc@0.4.0后仍旧偏上
2024-04-21 23:48:42
文档发给别人博客时发现完全正常,猜测是之前使用别的方法时残留的mathjax和katex相关的渲染器,随后完全恢复正常。
2024-04-22 12:59:41
使用中发现行内出现复杂公式时也会报错,于是把和放到了所有内容的前后,于是行内或者行间公式都变正常,且内部无需进行任何修饰。但此时内部MarkDown语法全部失效。参考这篇博客,我认为是因为存在 }} 情况时造成的
方案2
更换渲染器@upupming/hexo-renderer-markdown-it-plus,参考链接。