外面!号外!今天的头条终于支持输入LaTeX数学公式了!作为数学作品的创作者,小石斗真是莫大的快乐!这真是送给很多数学爱好者的最好的新年礼物!
以前,要输入数学公式,必须将其转换为图片,然后插入。现在,您可以打开PC端句子编辑页面,在句子编辑区域中选择要插入公式的位置,单击工具栏上的“插入附加插入卡”下拉列表“插入公式”,然后单击“插入公式”,打开标题中提供的公式编辑器以输入公式。
图1:打开公式编辑器
公式编辑器分为工具栏、公式编辑区域、公式预览区域和三个部分。
图2:公式编辑器
在“编辑公式”区域输入LaTeX公式,可以在“公式预览”区域实时查看公式渲染的效果,工具栏上提供了各种LaTeX命令按钮,可帮助您输入LaTeX命令。
公式输入完成后,单击“确定”按钮,输入的公式将在插入到句子编辑区域之前插入到选定的插入位置。
图3:已成功插入公式
然后,您可以单击公式,在公式编辑器中重新打开公式进行修改。
条形的数学公式使用LaTeX数学公式的语法。LaTeX是TeX的宏扩展,TeX是著名的数学家,计算机学家Donald是专门为他的巨著《计算机程序设计的艺术》开发的计算机排版系统。后来,美国数学协会(AMS)提供了基于LaTeX的“amsmath”宏软件包。这就是今天的LaTeX数学公式。
TeX是基于命令的宏语言,在公式编辑区域中输入的公式实际上是TeX代码。TeX是计算机语言,例如Python。但是,TeX代码的执行结果是生成预览区域和句子编辑区域中显示的富格文本。
TeX的这种特性使标题中的数学公式编辑器与World等可见编辑器不同。要播放它,必须对LaTeX数学公式的语法有一定的了解。(大卫亚设)。
LaTeX数学公式由文字和命令组成。其中LaTeX字符表示自己。例如:
e
LaTeX命令全部以斜线“\”(称为转义符)开头,用于区别于普通字符,命令生成以下格式和符号:
\pi
通常,命令后面是以下参数:
\sqrt 2
还可以包含多个参数。例如:
\frac 1 2
除命令名外,每个字符(包括字母、数字、符号)都是独立的。例如:
\sqrt ab 2
要将多个字符组合在一起,必须用花括号“{,}”括起来。例如:
\sqrt {ab 2}
TeX在导出格式文本时,默认情况下过滤符号之间的空格。例如:
A b
要显示输出空格,必须在每个空格前添加转义符。例如:
A\ b
换行符也已过滤,因此尝试在换行符中使用双斜杠\ \。例如:
A \\ b
因为某些命令非常有用,所以TeX提供了关键字。例如,上标命令分别为和_、
A _ b、a c、a _ b C
这些关键字不在一般数学公式中使用,如果不使用,可以在前面添加转义符。例如:
A\_b
注意:大括号“{,}”也是关键字,因此还需要转义符。例如:
[n]=\{1,2,n\}
数学公式由内嵌和外部(out-of-line)分隔,公式插入到文字行之间时是内嵌(in-line),我们可以在句子编辑区域中用鼠标拖动公式,更改插入位置,从而在行内和行外切换。
图4:线内切换
同时,我们可以通过工具栏调整外部修饰的方式。
src="https://p6.toutiaoimg.com/large/pgc-image/184afbe2152c41d289785ecf924f29fc?from=article.detail&_iz=31825&index=4" width="640" height="252"/>图5:行外居中
于,初学者来说,常用的LaTeX数学命令并不需要记忆,因为头条公式编辑器已经将它们做成了工具栏中的快捷按钮,如下图,按下 按钮,就会在 公式编辑器 生成 命令 \sqrt x ,然后只需要将 参数 x 改成我们需要的 表达式就可以了。
图6:快捷的LaTeX命令输入
但是,想要完全玩转数学公式输入,大家还需要还需掌握更多命令,以应付世界上最复杂的事物——数学。以下是小石头(作者)这两年,在头条用图片输入数学公式所积累的经验,在这里与大家分享。
在数学公式中,变量、函数参数 等 普通字符 默认为 斜体 ,而 函数名 需要写成 正体(罗马体) ,绝大多数 数学函数都已经被 LaTeX支持,例如:
\sin x ➤
但是有少部分 函数没有,例如:值域 ran,这时就需要使用 \operatorname 命令,例如:
\operatorname{ran} f ➤
除了函数名外,某些字母被用于特殊意义时,也需要被写成 正体,例如:虚单位i,微分符号 d,这时可使用 \mathrm 命令将字符指定为正体 例如:
\mathrm{i}, \mathrm{d}x ➤
特殊数集被要求被写成板书粗体,LaTeX支持的有,
- 自然数集: \N ➤ ;
- 整数集: \Z ➤ ;
- 有理数集: \Q ➤ ;有Bug
- 实数集: \R ➤ ;
- 复数集: \C ➤ ; 有Bug
注意:数集也可以写成(普通)粗体。
如果不支持可以使用 \mathbb 命令,例如:
\mathbb{A} ➤
下面的字体,也经常在数学公式中使用,
- 意大利体 \mathit{A} ➤ , 默认字体;
- (普通)粗体 \mathbf{A} ➤ ,用于向量、特殊集合;
- 手写体 \mathcal{A} ➤ ,用于 辅助线、特殊对象;
- 花体 \mathscr{A} ➤ ,用于 集族、范畴;
- 哥特体 \mathfrak{A} ➤ ,用于 可测集、特殊集合;
对每一个 特殊符号, 例如:上面的微分符号d,都要用命令指定字体,是非常麻烦的事情!我们可以用 \def 命令,来创建新的命令,例如:
\def \d{\mathrm{d}}
然后,就可以使用新命令了,例如:
\int 1\cdot \d x = x + C ➤
当然,\def 命令也可以带参数,例如:
\def \cat#1{\mathbf{#1}}
\cat{Set} ➤
注意:头条文章编辑器,目前,要求每个公式必须自己定义自己的命令,公式之间自定义命令不能共享。
前面的字体是针对拉丁字母而言的,而希腊字母并不支持这些字体,但是有希腊字母有两种写法(LaTeX通过在原始命令前加var来提供另外一种写法),可以分别用于不同的地方,例如:
直径 \phi ➤ ,角度 \varphi ➤
伽马函数 \Gamma ➤ ,伽马分布 \varGamma ➤
还有些希腊字母和拉丁字母完全相同,如:A,K,因此没有对应的LaTeX命令。
对于某些运算符,例如:
累加 \sum_{i=1}\^n ➤
当作为行内公式时,一般要求,将 上下标写在右上下角,这时可以使用 \nolimits 开关,例如:
\sum\nolimits_{i=1}^n ➤
反过来,当我们希望另外一些运算符,例如:
积分 \int_a^b ➤
的上下标符号写在上下时,可以使用 \limits 开关,例如:
\int\limits_a^b ➤
注意:\nolimits 和 \limits 开关 仅仅对 操作符有效,对于普通符号想要使用它们,需要用 \mathop 命令将其转为操作符,例如:
\mathop{a}\limits_b^c ➤
组合命令:
\binom {n}{k} = \frac{n!}{(n-k)!k!} ➤
在行内可改写为:
\tbinom {n}{k} = n! / (n-k)!k! ➤
两种括号比较:
(\frac 1 2), \left( \frac12 \right) ➤
只显示一边的括号:
\left. \frac12 \right) , \left( \frac12 \right. ➤
定义集合时需要用 竖杠命令 \mid 将 元素 和 属性分开,例如:
\N = \{x \in \Z \mid x \geq 0\} ➤
但是,如果 属性表达式是多行时,我们需要使用 两对 \left \right 配合使用,并且由于 \mid 不能应用,所以必须使用 原始 的 竖杠 | 搭配空格,例如:
\left\{x \in \Z \ \left| \ x \geq \frac 1 2 \right.\right\} ➤
在求定积分时,也有类似的技巧,例如:
0!=\Gamma(1)=\left.\int_0^{+\infty} t^0 e^t \d t = -e^t\right|_0^{+\infty} = 1 ➤
有时候,需要更宽的空格,这时用多个空格拼接起来不划算,我们可以使用 \quad 命令,例如:
x_i \in \R,\quad i = 1, 2, ..., n ➤
转义符 \ 在数学中也用作 差集,这时可以使用 \setnimus 命令,例如:
R\setminus0 ➤
可以用 \dots 命令 取代 ... 输入来省略符 ,例如:
1, 2, \dots, n ➤
算式的 省略符号 一般写在中间,用 \cdots 命令,例如:
a_0x^n + a_1x^{n-1} + \cdots + a_{n-1}x + a_n ➤
有时候需要标注累加式或累积式的项数,我们可以这样:
na=\overbrace{a + \cdots + a}^n ➤
b^m=\underbrace{b\cdots b}_m ➤
也可以在关系运算符上标注:
\stackrel{a}{\Longrightarrow} ➤
中学数学,要求用箭头表示矢量:
\vec{a} ➤
类似的还有:
\overline{A \cap B} = \overline A \cup \overline B ➤
a_1 + \cdots + \hat{a}_i + \cdots + a_n ➤
注意:\^{a}和 \hat{a}完全类似,因为\^用于了加帽命令,所以要单独输入^可写为 \^{} 或 \hat{}。另外,\^在LaTeX公式里无效,只能使用\hat。
在公式中可是使用下列命令来控制字体大小:
{\Huge A} {\huge A} {\LARGE A} {\Large A}{\large A} A{\small A}{\scriptsize A}{\tiny A} ➤
也可以使用\color命令来控制文字颜色,例如:
{\color{red} R}{\color{green} G}{\color{blue} B} ➤
同余方程命令:
f(x) \equiv c \pmod m ➤
f(x) \bmod m = c ➤
方程组命令:
\begin{cases}
x_1 + x_2 = -\frac b a \\
x_1x_2 = \frac c a
\end{cases}
\qquad
\left\{\begin{array}{c}
x_1 + x_2 &=& -\frac b a \\
x_1x_2 &=& \frac c a
\end{array}\right.
➤
矩阵命令:
\begin{matrix}
1 & 0 \\
0 & 1
\end{matrix}
➤
添加括号(包括行列式符号):
\begin{pmatrix} M \end{pmatrix}, \begin{bmatrix} M \end{bmatrix}, \begin{vmatrix} M \end{vmatrix}
➤
添加省略符和角标:
\begin{bmatrix}
1 & \cdots & 1 \\
\vdots & \ddots & 0 \\
1 & 0 & 1
\end{bmatrix}_{m \times n}
➤
添加分割线:
\begin{array}{|c:c|}
\hline
1 & 0 \\
\hdashline
0 & 1 \\
\hline
\end{array}
➤
算术竖式:
\begin{matrix}
& A & B & C & D \\
\times & & & & 9 \\
\hline
& D & C & B & A
\end{matrix}
➤
\begin{array}{c}
\begin{matrix}
\\ \Box & \Box & \Box & / \\ \\ \\ \\ \\ \\ \\ \\ \\
\end{matrix}
\begin{matrix}
&&&\Box & 7 & \Box & \Box & \Box \\
\hline
\Box & \Box & \Box & \Box & \Box & \Box & \Box & \Box \\
\Box & \Box & \Box & \Box \\
\hline
&& \Box & \Box & \Box \\
&& \Box & \Box & \Box \\
\hline
&& \Box & \Box & \Box & \Box \\
&&& \Box & \Box & \Box \\
\hline
&&&& \Box & \Box & \Box & \Box \\
&&&& \Box & \Box & \Box & \Box \\
\hline
&&&&&&&0
\end{matrix}
\end{array}
➤
了,目前小石头经常用的就这么多了,希望对大家有所帮助。
就小石头分析,头条数学公式,具体使用的是 MathJax 的 KaTeX引擎,更详细的内容大家可以参考:。
(这是小石头的第一篇头条文章,结束比较匆忙,写得也比较仓促,出错之处在所难免,欢迎各位条友批评指正!)