如何快速优雅的在CSDN输入公式?

■ 输入公式太难了!


如果你是在别的网站通过BLOG记录自己的工作、生活和学习的话,也许是否输入 数学公式 无关大碍,毕竟这种理工科学生的语言刻薄、寡味。但在 CSDN 专业网站上来记录理工科专业内容,如果缺少了数学功能不仅让你在精确描述专业现象时感觉瘸了一条腿,同时也会使得文章丧失了灵魂。

在CSDN提供的 Markdown 编辑器中可以使用 Katex 输入数学公式,这的确解决了不少的问题。但使用过Katex或者LaTeX进行公式编辑过的人都懂得,虽然Katex语法通过多次使用之后可以变得很熟练,但输入的效率会在一定的程度之后提不上去。其中最主要的原因就是过得语法输入字符降低了输入的速度。

▲ 使用KATEX输入公式

▲ 使用KATEX输入公式


除了前面的问题之外,在CSDN中显示Katex公式还会存在显示不清楚的问题,比如下面的公式在CSDN中显示的效果。

F ( s ) = ( s + e s 2 σ 2 + γ 2 ) a + G ( s + b ) F\left( s \right) = {{\left( {s + e^{ - {{s^2 } \over {\sigma ^2 + \gamma ^2 }}} } \right)} \over {a + G\left( {s + b} \right)}}

而实际的公式应该如下。其中最主要就是在公式中出现多层分数联排时,上下之间会出现错位:

下面的例子最为明显,其中左右是从 Katex 官网首页截图下的显示效果,右边使用 Mathtype 编辑后显示的效果。
▲ 对比CSDN中的公式与Mathtype显示的公式

那么:

  • 该如何提高公式输入效率问题?
  • 如果提高公式的显示质量?

这里介绍的,就是使用MATHTYPE软件在CSDN中的Markdown编辑器中快速优雅的输入数学公式。

01用MATHTYPE输入数学公式


1.Mathtype数学公式编辑软件

Mathtype软件是一款应用在Windows, MacOS中交互式高效数学公式输入软件。可以方便的在文字处理软件、Web网页、出版物编辑软件、各种演讲辅助(PowerPoint)、网络课程中输入数学公式,也适合在Tex、LateX、MathML中应用。

▲ MathType数学公式输入软件

▲ MathType数学公式输入软件

MathType在输入公式中,采用了图表按键+快捷键的方式来提高常用和不常用数学表达式输入的效率。特别是,针对某些常用到的字符,可以自行通过软件定义的快捷键的方式来提高输入速度,这样每个人都会在输入的过程中不断地丰富所使用的快捷键,并随着输入的次数的增加,熟练程度和速度就会逐步提高。

由于没有了Latex过多的语法字符的输入,因此上,在Mathtype中输入数学工具效率高。

如果将Mathtype编辑的公式输入CSDN 的Markdown编辑器呢?

其中包括两种方式:

  1. 拷贝到剪切板进行Latex转换;
  2. 拷贝图片到csdn

2.从Mathtype到CSDN公式转换

在Mathtype中可以设置公式拷贝到剪切板进行Latex转换。选择“转换到其他语言(文本)”中的TeK-Flain Tex格式,然后转帖到CSDN。

▲ MATHTYPE中设计公式转换

▲ MATHTYPE中设计公式转换

似乎这样做非常自然方便,但其中存在着一个缺点,那就是: 很多Latex的公式语法在CSDN中不支持.

比如下面的公式
A = [ 1 2 2 4 ] [ 1 2 ] A = \begin{bmatrix} \begin{matrix} 1 & 2\\2 & 4\\\end{matrix} \end{bmatrix} \cdot \begin{bmatrix} \begin{matrix} 1\\2\\\end{matrix} \end{bmatrix}

直接从Mathtype拷贝到CSDN的Markdown编辑器之后的代码是下面:

$$
A = \left[ {\matrix{
   1 & 2  \cr 
   2 & 4  \cr 

 } } \right] \cdot \left[ {\matrix{
   1  \cr 
   2  \cr 

 } } \right]
$$

而实际的代码为:

$A = \begin{bmatrix}  \begin{matrix}      1 & 2\\2 & 4\\\end{matrix} \end{bmatrix} \cdot \begin{bmatrix}  \begin{matrix}      1\\2\\\end{matrix} \end{bmatrix}$

这种需要通过代码转换,才能够将MATHTYPE中的Latex公式文字转换到CSDN中去。这部分使用PYTHON语言来实现,它直接从Windows剪切板将MATHTYPE的公式文档获取,进行转换后在直接粘贴到CSDN的Markdown编辑器中,便可以实现高效公式输入了。

详细的代码可以参见:

3.从Mathtype到CSDN图片拷贝

在前言中介绍了CSDN的显示公式问题,将Mathtype编辑的公式直接按照图片方式加入的CSDN的Markdown编辑器就可以解决这个问题。当然,这也会带来相应的问题:

  • 问题1: 公式不能够再重复高效的编辑;
  • 问题2: 如果解决现实比例,使得插入的公式能够与网页的其它文字比例相当。
  • 问题3: 如果解决在手机屏幕上观看的问题。在普通的手机上查看公式需要能够紧凑利用到手机的宽度,同时调整图片的尺寸使之能够显示的比较自然。
  • 问题4: 如果能够在公式后面加上公式标号,以方便文中进行引用。

通过PYTHON程序 MPC 来解决上述问题。通过调用MPC和施加相应的参数,可以方便的直接将在MATHTYPE中编辑好的公式直接插入到CSDN,并进行尺寸格式的调整。

MPC的功能是在当前Window下搜索MathType窗口,并根据窗口调整裁剪的图片大小和宽度。根据MPC的参数控制是否进行居中居左显示,并设置公式标号以及公式边框。然后直接插入到CSDN的Markdown编辑器中。

具体的使用方式可以参见MPC的代码:

下面显示示例:

  • 居中显示

  • 居右显示

  • 带有边框

上述显示的比例和效果也适合在手机屏幕中阅读,如果现在你使用手机观看本博文,就会体会到这一点。

※ 总结


使用MathType帮助在CSDN中录入公式,可以大大提高输入的效率,同时也能够优化显示的方式。特别是通过图片自动嵌入,可以使用显示的公式能够与其它文档中的显示风格保持一致。

文中给出了两种方式所需要的PHTYHON程序。如果配合TEASOFT软件在后台做支撑,通过键盘上的组合快捷键调出PYTHON命令完成插入功能,则可以使用的上述编辑过程如同行云流水。

猜你喜欢

转载自blog.csdn.net/zhuoqingjoking97298/article/details/107332922
今日推荐