如何复制知乎文章中的公式

本文将教各位如何复制知乎上的数学公式

首先需要知道,知乎上的公式是简化版的mathjax

那么代表只要支持mathjax的网页都可以直接复制,但是katex则完全不兼容

了解知乎代码

首先在任意有数学公式的知乎页面,点击查看页面源代码,然后选择自动换行【edge和360有这个功能】当然如果代码不是很长的几行挂在那里代表已经换行好了

你可以把整个代码copy到文档里

找到如下的分界符

css
1
<div class="RichText ztext Post-RichText css-4em6pe" options="[object Object]">

PS:在一堆黑色字体的css下面就是在这个标识符

下图所示可做示意

示意

接下来便可以把后面的里标签的内容复制,建议不要复制参数里的,要加上$$公式$$作为定界符即可

详细说明 【有关公式需求和插件包引入】

我需要提一句,mathjax默认配置是不支持有些插件的

比如知乎中的竖式,无法直接用默认mathjax打出,需要有形如以下的代码:

Bash
1
2
3
4
5
$$
\require{mhchem}
\require{autoload-all}
\require{mediawiki-texvc}
$$

以上代码代表引用

Bash
1
2
3
$$
\require{插件名}
$$

或者引入以下js

JavaScript
1
2
3
4
5
6
7
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
    TeX: {
        extensions: ["mhchem.js","autoload-all.js"] //插件名
    }
});
</script>

目前mathjax支持下图所示的扩展插件

示意

上面分别对应

mhchem化学扩展,对应\ce{}等

autoload-all对应可自动伸长的等号和箭头,\xlongequal,\xrightarrow等

mediawike-texvc对应缩写

在复制公式时一定要知道需要什么插件,不然会无法显示,*enclose包便是竖式包

文末,有关mathjax的好玩特性

其中,mathjax支持交叉引用,不多说,上效果

Bash
1
2
3
4
5
$$
e^{i\pi }+1=0\tag{1}\label{eq}
$$

这里我们引用$\eqref{eq}$。

$$ e^{i\pi }+1=0\tag{1}\label{eq} $$

这里我们引用$\eqref{eq}$。

在\tag{}编号后面使用\label{}定义锚点,后面正文中eqref{}或者ref{}就可以引用。区别是前者带括号,后者不带括号

点击文本中的(1),还可以跳转到被引用的公式

ketax不支持该功能,只能超链接引用

至此,本文结束

有关mathjax的语法,报错解决,扩展功能均在我博客中都有,可自行查阅

如何复制知乎文章中的公式

https://blog.tsinbei.com/archives/1152/

文章作者
math.sx
发布于

2023-02-13

修改于

2023-02-13

许可协议

CC BY-NC-ND 4.0

评论

昵称
邮箱
网址
暂无