通过简阅摘取csdn的笔记,但是公式无法正常渲染,
原文应该是这样
latex需要使用$ $
或者$$ $$
包裹公式才能进行渲染
这就好比对代码块abc
, 你只是把其内容abc摘录下来了, 但漏掉了其语法形式` `
简悦对公式的支持一般,推荐使用maoxian插件,这个插件可以完美处理公式(来自一个配置简悦N多次且看不懂简悦文档的受害者)
这个不好整…
查了下, CSDN 的数学公式有 LaTeX 和 KaTeX 两版,
前者导出来简单, 后者 (鉴别依据可能是: 该公式不体现为完整对象, 而是可选中其中部分字母, 以及点右键不弹出 MathML 的特有菜单) 想搞到代码有点复杂
但是根据这个帖子 How to convert Katex to latex or mathml? · KaTeX/KaTeX · Discussion #3729 , KaTeX 是蕴含了完整的 LaTeX 公式的
不知道有啥办法能输出? - 我现在只会在浏览器控制台里, 凑出来一句这个:
$("span.katex-mathml").each(function(i, elem) {console.log(`${i}, \$${elem.innerHTML.trim().split('\n').pop().trim() }\$`)}); "log done"
这可以把当前页面大部分公式的精确代码弄出来
建议: 复杂公式复制了用, 简单的就随他乱着吧…
稍微升级了一下, CSDN 难处理的带公式页面, 在浏览器 console 运行
// 替换 .katex--display > .katex-display
$("span.katex-display").each(function(i, elem) {
var latexFormula = $(elem).find("span.katex-mathml").text().trim().split('\n').pop().trim();
console.log(`${i}, \$${latexFormula}\$`);
elem.innerHTML = `<br>\n\$\$${latexFormula}\$\$\n<br>`
}); "replace katex 块状 done"
// 替换 .katex--inline
$("span.katex--inline").each(function(i, elem) {
var latexFormula = $(elem).find("span.katex-mathml").text().trim().split('\n').pop().trim();
console.log(`${i}, \$${latexFormula}\$`);
elem.innerHTML = ` \$${latexFormula}\$ `
}); "replace katex 行内 done"
以上可以做到 行内公式转 $xxx$
, 块状公式转 $$yyy$$
,
然后利用任何手段以纯文本复制下来贴 Ob 里, 可以对比着看
注意:
\begin xxxx \end
之前会带一套重复 code, 不会清理 (视觉上很明显)