Skip to content

记住这俩软件, 可能改变你的一生 MathType 与 Mathematica 使小学生也能在知乎上写笔记!

重要的东西我一直忘了讲··· 我个人属于是半路出家入物理结果一路走来却一直都顺风顺水的那种. 那这背后自然是有原因的, 不过答案可能就比较出乎意料了, 因为在我的学术生涯起到了决定性作用的并不是某本书、某个老师甚至某个人··· 硬要找出个人的话也不是不行, 但你可能想不到那个人会是我的高数老师, 虽然后来我用的高数和他教的高数根本就不是一回事, 他当年教了啥我也全忘光了. 但这都改变不了他在第三堂高数课上通过一款软件改写了起码我前半生的事实, 这款软件就是 MathType.

另外就是, 本文将公开解答如何在知乎上输入公式, 有不少人私下问过我了, 然后我怀疑还有相当一部分人想问但又没问我. 但反正, 我话就摆在这里: 在知乎上写公式比你在纸上写还简单.

所以就结论而言, 如果我只能向理工科的大一新生讲两件事, 那我必然不会跟他谈学习方法之类, 而一定会向他介绍两款软件----MathType 与 Mathematica.

很惭愧, 只能讲一些微小的软件.

这两款软件就是高中生与研究生的分界线, 有的本科仔活得像高中生而有的本科仔却能活得像研究生, 在我看来这无非就是信息差导致的.

而今天我正是要向各位新生传递这个重要信息, MathType 与 Mathematica 实际上分别就是帮你演草排版与计算绘图的软件, 所以有了它俩之后, 你需要做的就只是像一名标准 21 世纪学者那样负责思考结构上的问题即可, 下面我将分别列出它俩的特性.

MathType

  • 最重要的特性: 直观, 所见即所得, 不需要任何前置知识, 没有任何学习成本.
  • 若方法得当, 则 MathType 输入公式的速度将比手写要快很多还轻松很多.
  • 代替手写 LaTeX 代码, 这意味着你将能用更直观的手段产生公式代码.
  • 代替演草纸, 从此不需要再腾出桌面然后被自己那写得比狗屎还烂的字折磨.
  • 代替演草纸, 从此不必每写一步就重抄一遍, 你可以直接复制粘贴替换.
  • 代替笔记本, 你可以用 MathType 简洁快速地记录或渲染[1]少量公式.
  • 可以将排版的公式内容直接通过复制粘贴导出至 Office 系列.
  • 可以将排版的公式内容直接通过复制粘贴导出至知乎公式编辑器.
  • 可以将排版的公式内容直接通过复制粘贴导出至 LaTeX 编辑器.
  • 有了 MathType 后你将能轻松产生电子档的作业答案[2], 无论你懂还是不懂 LaTeX[3].

Mathematica

  • 最重要的特性: 直观, 所见即所得, 不需要任何前置知识, 没有任何学习成本.
  • 代替演草纸, 你的公式推导, 我是说公式符号推导, 包括微分、定积分、不定积分、无穷级数求和、幂级数展开、合并同类项、提取公因式、Fourier 变换甚至矩阵乘法行列式计算或者特征值与特征向量的寻找等等一切你需要在纸上要搞老半天的操作都可以通过十分直观的一行代码解决. 其实与其说是代替演草纸··· 将来大多数的运算你手算根本算不了, 动不动就是几千项里边儿合并同类项, 几千项做定积分啥的···
  • 绘制图像, 任何函数、方程或者说你在教科书上看到的任何图像都可以用 Mathematica 通过简洁的代码产生.
  • 绘图不仅限于二维图像, 三维照画, 所以你也可以在 Mathematica 中简单建模, 如果你的空间想象能力不那么强的话, 干脆直接建模然后慢慢把玩.

所以说, 如果你上本科的时候手上能有这俩软件, 可能你看到的太阳的颜色都和别人不一样了.

有了可能爱上数学, 缺了可能差点退学

不过 Mathematica 我实在没必要再介绍啥了, 全都在这:

https://zhuanlan.zhihu.com/p/136542995https://www.zhihu.com/question/36891138/answer/2164172233所以本文接下来就是细讲怎么给你把 MathType 整上.

目録

1. 输入公式

1.1. 鼠标瞎点 1.2. 快捷键 1.3. 字体 1.4. LaTeX 环境

2. 好在哪

2.1. 极其规范优美的字体 2.2. 复制粘贴大法 2.3. 缺点

3. 输出公式

3.1. 输出到知乎 3.2. 输出到 Office 3.3. 输出到 LaTeX 编辑器

额外内容 - 我写草稿用的 LaTeX 模板

1. 输入公式

1.1. 鼠标瞎点:

MathType 界面就长这样:

这里实在没啥好讲的, 你可以按一下 a 里面就会出现一个数学公式体的 a, 你也可以在上面那几排工具栏里面选择自己想要的符号与模板.

1.2. 快捷键:

此乃 MathType 的精华之一, 像我这样真正的高手用起来其实是完全不需要动用鼠标的, 这就是快捷键的功劳, 下面以分数线为例:

当你数表移到模板时下面就会显示相应的快捷键, 比如分数线的快捷键就是『Ctrl+F』, 有了这些快捷键后你的键入速度就可以超越手写了, 而且写出来的东西还好看巨多.

这些模板不仅比手写快, 还比 LaTeX公式快, 比如矩阵, 你在 MathType 上就是一个模板然后填数字就是了.

其实这些快捷键都很容易记忆, 都很直观, 比如说分数线为啥是『Ctrl+F』呢? 因为『分数』嘛, 『佛嗯分 fēn』所以是 F.

再比如说 这三个括号就分别是『Ctrl+, 』,『Ctrl+9』与『Ctrl+[ 』, 注意括号别手动输入, 这样的模板括号可以自动调节大小以适应内部被输入的内容. 为啥前俩是『, 』与『9』这么怪的东西呢? 因为在键盘上这俩键配合『Shift 』可以输入『<』与『 ( 』.

点到为止, 接下来就是重头戏了:

在这里你可以看到所有的快捷键, 甚至修改它们.

像我这种强迫症当然就按照自己的逻辑手动地修改了上百个快捷键, 尤其是 Dirac 符号和 这些必须得有吧.

1.3. 字体:

MathType 中有不同的字体环境, 你最直观的感受将是无法在默认的数学环境下输入空格, 这是因为 LaTeX 公式中的空格并不是空格而是需要具体的代码『 , ; \ 』等来执行的. 不过没关系, 你也可以像我一样将这些空格也设置好快捷键:

在文本环境下可以输入空格, 且输入的字也是正体, 不同环境的转换方法如下:

But you know, 捞仔才鼠标点击, 高手都是疯狂『Ctrl+Shift+E』与『Ctrl++』.

你可以在最下方查看键入位置所处的字体环境:

1.4. LaTeX 环境:

其实这里也可以直接输入 LaTeX 代码, 如果你 somehow 觉得这样反而比较简单的话···

只需在选项中的工作区选项中勾上这一项, 今后只要按一下『 \ 』就会进入 LaTeX 模式, 输入完后按回车键渲染公式并回到正常模式.

2. 好在哪

2.1. 极其规范优美的字体:

用上第一章的那些操作, 你就可以超高速地输入公式了, 更重要的是, 它们是如此的完美:

其实你要说丑也挺丑的, 但肯定比手写好看.

我的手写字属实垃圾臭狗屎, 我妈见一次嘲讽一次还没法还嘴, 因为写得确实比小学生字还拉. 所以如果我在演草纸上算错了, 就会很烦, 还写 nm, 爷打电动去了. 但如果是在 MathType 上算错了, 那我大不了一行行地检查呗.

不过我英语写的还行, 这个还是得提一下:

2.2. 复制粘贴大法:

精华之一嗷家人们, 正是这个复制粘贴让我完完全全地依赖着 MathType.

就你在演草纸上平均每行算几步? 如果每行只算两三步的话那几十步下来就要将一个式子反反复复地手抄十几遍, 如果每行算四五步的话搞不好就要出错, 错了还不好查···

那有了 MathType 呢? 咱每行还就只算一步, 然后复制粘贴到下一行, 然后还就只算一步, 反正复制粘贴不就是一瞬间的事吗?

只要我乐意, 一行式子抄几遍都是几秒钟的事.

所以为啥我平时给你看的过程都如此细致呢? 因为细致点儿我反而好算啊.

而且写错了, 约分, 相减, 开括号啥的, 全都可以轻松完成:

\begin{align} & \ \ \ \ \left( a+b \right)\left( c+d+f+e \right) \\ & =\left( \left( a+b \right)c+\left( a+b \right)d+\left( a+b \right)f+\left( a+b \right)e \right) \\ & =ac+bc+ad+bd+af+bf+ae+be \\ \end{align}

注意我第二步, 这个手写就很痛苦, 但在 MathType 上也就是几秒钟的事, 第三步同理.

2.3. 缺点:

唯一的缺点就是害得我手写··· 其实我几年下来根本就不会手写了.

然后当年每次考试都写得比别人慢··· 得相当多.

3. 输出公式

3.1. 输出到知乎:

相信这是大家最想看到的内容之一, 然而答案十分简单:

就是选定这个 Texvc 就可以了, 接着只需要在 MathType 中复制你编辑好的公式, 比如说:

那你粘贴出来的东西就是: [=\int{\prod\limits_{\nu }{\delta }^{\nu }{\mu }\text{d}({\partial }^{\mu }{D}X)}-\int{\text{d}^{4}x[{\partial }^{\mu }({D}{x1}{\partial }{\mu }X)-{D}_{x1}{\partial }^{2}X]}]

这就是 LaTeX 公式代码的一种, 你就甭管它啥意思, 按一下下面这个插入公式:

然后贴进去按个确认就完事儿了:

就这么简单嗷.

3.2. 输出到 Office:

这时我们只需要选择另外一个输出模式:

然后你就嗯往 Office 里贴就完事儿了.

不过有时候你会发现 PPT 似乎特别难贴复杂公式, 此时你可以先贴到 Word 里再从 Word 里复制粘贴到 PPT 里, 这究竟是啥原理我也不知道, 反正巨硬就是要这么折腾你.

3.3. 输出到 LaTeX 编辑器:

知乎上一直有人问为啥有了 MathType 还要用 LaTeX, 然后下面 Word 档和 LaTeX 档打得不可开交. 我: ??? 难道不应该是用这类软件来直观生成公式然后输出 LaTeX 机械码吗?

输出 LaTeX 我推荐 AMSLaTeX 模式.

但输出的内容可能和你个人的习惯会出现一点儿冲突, 然后你又不知道在哪儿自定义输出命令对吧? 别担心, 我知道:

其实就只需要用记事本格式打开并更改这个路径下文件即可.

值得注意的是改完后要关闭后重启软件或者输出模式在公式对象与转换文字间切换一下再换回来才能起效果.

好消息是这些文件里面的东西都写得很直观:

看吧, 只要你懂人话就没问题了.

比如我希望复制出来的公式是 这样的, 而不是 [\cos \theta ] 这样的.

那我就只需要做如下修改:

var/"BeginMathDisplay" = "\["; var/"BeginMathInline" = ""; var/"EndMathDisplay" = "\]"; var/"EndMathInline" = ""; 改为 var/"BeginMathDisplay" = ""; var/"EndMathDisplay" = "";

此外你还可以随意更改一些模板的输出代码, 比如说 AMSLaTeX 模式对左下到右上的斜线是无定义的, 而我个人将其定义为 \slashed 这样就可以跟我 LaTeX 里输入 Dirac slash 的包衔接上了.

具体而言就是做如下修改:

我将 //strike/up = "?" // Strike-through (bottom-left to upper-right) 改为了 estrike/up = "\slashed #"; // Strike-through (bottom-left to upper-right)

比如说我对 使用 strike/up 的效果就是

所以我会选择让它来指代 \slashed.

你说我怎么知道改代码的时候前面改成『e』后面加『#』与『;』?

那其实我也不知道语法, 我就是看前后文 xjb 猜的, 相信你们的猜测能力也不会比我差.

Anyway, 赶紧试试吧!

额外内容 - 我写草稿用的 LaTeX 模板:

没用过 LaTeX 的人可能不知道, 就这玩意儿没模板是没法渲染文本的, 你可以拿我的先玩玩.

\documentclass{ctexart} \usepackage[top=2cm, bottom=1.5cm, left=1.8cm, right=1.5cm]{geometry}[[4]](#ref_4)\usepackage{upgreek} \usepackage{graphicx} [[5]](#ref_5)\usepackage{bm}[[6]](#ref_6)\usepackage{slashed} \usepackage{amsmath} [[7]](#ref_7)\usepackage{amssymb}[[8]](#ref_8)\usepackage{lmodern}[[9]](#ref_9)\usepackage{simplewick} \usepackage{color} \pagestyle{headings} [[10]](#ref_10)\spaceskip=0.2em \begin{document} *你要输入的文本就放这儿, 中文也没关系. * \end

噢, 关于这个软件咋这么贵, 这··· 我只能说假如你加了几个讨论 MathType 或者 LaTeX 相关内容的群的话呢, 搞不好呢··· 就那个··· 你懂的嘛··· 那个嗯··· 咳咳 学习版!

此外就是还有很多替代软件, 便宜得多甚至免费, 哪些呢? 出门左转评论区, 大波安利在路上.

参考

  • ^其实根本不用像 LaTeX 那样渲染, 直接就显示出来了, 这就是优势.
  • ^先不说老师或助教改起来舒服, 你自己写起来其实也舒服很多.
  • ^学了 LaTeX 以后仍然可以继续使用 MathType.
  • ^为了能得到直立的希腊字母, 只需在前面加个 up, 如: \upalpha.
  • ^为了得到加粗指令 \bm.
  • ^为了得到 Dirac slash.
  • ^为了能获得一个漂亮的空集符号 \varnoting.
  • ^用来取消掉一些 amsmath 包带来的警告.
  • ^为了得到 Wick 收缩, 具体操作自己去找说明书.
  • ^修改了字间距, 我觉得默认的间距太宽了.

用 Markdown 与 LaTeX 记录清晰、可复查的学习过程。