怎样输入完美的TeX公式

标签: 完美 tex 公式 | 发表时间:2011-09-03 16:36 | 作者:(author unknown) Hing Sar
出处:http://docs.huihoo.com/

怎样输入完美的TeX公式

不要以为有了 TeX 你的公式就完全无可挑剔,TeX 输入的公式虽然不假思索就可以比其它程序来的漂亮,但是我们的目的不是跟其它程序比较。我们的目的是用最优雅的方式来表达我们的思想。TeX 只是一个工具,用它能创造出一流的数学书,也能写出一堆漂亮的垃圾。我见到过的最好和最糟的讲义都是用 TeX 写的。

下面来看看为了得到无懈可及的公式,几个需要注意的细节。这些好主意都来自 "The TeXbook",我或多或少是在翻译,你有兴趣可以自己看看这本书。

  1. 手动调整公式中的字符间据

    在“TeX释疑”里我们遇到这个公式:

    我说是这样打出来的:

    $$\sum_{p\rm\;prime}f(p) = \int_{t>1}f(t)d\pi(t).$$
    

    其实为了避免引起不必要的复杂,我撒了一个谎 :) 你用这个方法输入的公式其实是这个样子:

    看不出区别吗?仔细看着 f(t) 和 dPi(t) 之间的间隔,是不是小了一点?

    上面的公式其实少了一个地方,它本来应该是:

    $$\sum_{p\rm\;prime}f(p) = \int_{t>1}f(t)\,d\pi(t).$$
    

    "\," 是一个 thinspace, 如果没有它 f(t) 和 dPi(t) 就会靠的太近,\, 的大小是 1/6 quad, 一个 quad 的长度跟字体大小有关系,是一个 "M" 的宽度(1em)。看到了?TeX 的公式是非常考究的,有时你必须自己手动调整公式里字符的间距,否则你的公式就只是 99% 的完美,而不是 100%.

    还有一种情况,双重积分号如果这样输入:

    $$\int\int_D dx\,dy$$
    
    就会变成这样:

    显然那两个弯离得太远。你应该这样输入:

    $$\int\!\!\!\int_D dx\,dy$$
    
    结果才会是你想要的:

    两个积分号之间距离减少了3个thinspace. 因为 \! 就是 -1/6 quad.

    另外,花括号也需要特别注意: 如果表示一个序列,你可以这样写:

    $\{1,2,\ldots,n\}$
    

    结果是正确的:

    但是,如果你想把一个集合

    用这种方法打出来:

    $\{x\mid x>5\}$
    

    就会得到这种结果:

    因为中间的 "|" 两旁有比较大的间隙,花括号两端里面的空间显得小了点。用 \, 在两端加上 thinspace 就更加好看了。

    如果你想用

    $|-x|=|+x|$
    

    表示

    其实你得到的是

    因为 TeX 实际上不理解数学,它认为你想把 "|" 和 "x" 相加减,结果在它们之间插入了过多的空间。为了消除这个误解,你必须说:

    $\left|-x\right|=\left|+x\right|$
    

    \left 和 \right 告诉 TeX,"|" 是一个分界符而不是一个操作数。这是对付一台“试图变得聪明的电脑”的小窍门。

    看到这些你是不是觉得“怎么TeX并不是我想象中的那么聪明?”对。TeX 绝对没有你聪明,机器就是机器,它其实不理解数学。在这种时候只有人的判断才是正确的。

    其实这只是一个视觉才能感受到的东西,你不可能记住所有这些。开始时你不用过于专心于这些细节,当你发现一个公式看起来确实有问题时才去做这些细节的调整。久而久之你就会积累很多经验,直接就可以得到最好的效果。

    想一想应该怎样输入以下公式?特别注意间隔。

  2. 两种不同的逗号。

    一个 TeX 的初学者可能会打出这样的公式:

    for $x = a, b$, or $c$.
    
    这样的结果是图中上面那一个。 比较一下下面的那个,它是这样打出来的:
    for $x = a$, $b$, or $c$.
    

    第一种作法中,逗号被作为了公式中的逗号,就像 "f(a,b)" 里的;而第二种写法中,逗号被作为了文章里的普通逗号,这两种逗号是不同的。公式里的逗号后面的间距比文章里的要小,这样第一个公式里出现两种不同大小的间隔,这是很不好看的。

    而且公式里的逗号处不可能被断行,因为你明显不希望 "f(a,b)" 这样的结构被自动分开。这样第一个公式的逗号处不可能被断开,这会影响断行的效果。在这个句子里,那个逗号明显应该是文章中的普通逗号,它不应该在数学公式里,所以第二种做法才是完全正确的。

    实际上 100% 完美的做法应该是这样:

    for $x = a$, $b$, or~$c$.
    

    加了一个 "~". "or" 和 "$c$" 在断行时不应该被分断,这样你的文章看起来逻辑才会联贯。要是那个 "$c$" 出现在一行的开头,读者的注意力很容易被分散。

  3. 不同的省略号。

    看到上面两行有什么不同吗?它们是分别用以下两行打出来的。

    $x_1+x_2+\cdots+x_n$\quad and \quad $x_1,\ldots, x_n$
    
    $x_1+x_2+\ldots+x_n$\quad and \quad $x_1,\cdots, x_n$
    

    哪一行好看一些?当然是上面的了,通常应该把 \cdots 用在 +,-,= 这类“高脚符号”之间,而把 \ldots 用在逗号这样的“矮子” 符号之间。不幸的是我发现很多书籍错用了这两种符号,或者是因为 它的作者使用的程序无法区分这两种符号。

    看看下面这些情况应该用哪个标点?

祝贺你看到了这里 :) 不过其实这页的标题根本就是错误的。知 道这些“完美的细节”远远不够保证你写出“完美的公式”,虽然你 很仔细的对你的公式精雕细琢,以至于没有一个书法家能对它的美观 性有所异议,但是有可能你的思想要用完全不同的另一个公式写出来 才能让人明白。

相关 [完美 tex 公式] 推荐:

怎样输入完美的TeX公式

- Hing Sar - docs.huihoo.com
不要以为有了 TeX 你的公式就完全无可挑剔,TeX 输入的公式虽然不假思索就可以比其它程序来的漂亮,但是我们的目的不是跟其它程序比较. 我们的目的是用最优雅的方式来表达我们的思想. TeX 只是一个工具,用它能创造出一流的数学书,也能写出一堆漂亮的垃圾. 我见到过的最好和最糟的讲义都是用 TeX 写的.

Tex\LaTex编辑器对比(图)[转载]

- Mao.. - LaTeX-学习园地
学习TeX最重要的是你要用他来做什么,学术文章书籍,我是非常推荐使用TeX的. 至于为什么,我也卖个关子,等你真正能用他来排版书籍,记住是真正会而不是拼凑,那时你就自然明白了,这是句废话,当然这也是许许多多使用TeX人员的体会和心得. 选自:http://zkn365.blog.163.com/blog/static/3061042011984339822/.

LaTeX杂谈:TeX大家族到底有多少成员,到底什么关系呢?

- Rubby - LaTeX-学习园地
很多学了一阵子LaTeX的朋友,都会有一个问题:latex, pdflatex, xelatex,luatex,到底是什么关系,有什么不同. 下面这个文档《TeX Overview》或许让你有一个整体的历史性的理解,他们到底是什么关系.

完美的 Chromebook

- Alex - 爱范儿 · Beats of Bits
女性内衣恐怕是这个世界上最拧巴的产品之一:越快被脱掉,才说明它做的越成功. 和它里面更加实质的东西比较,它只是个又薄,又短暂,平时又缺乏曝光的中间过程. Roy Raymond 就抓住这种短暂的闷骚,创造了著名的奢侈品品牌:维多利亚的秘密. 是的,虽然理工男们难以理解,但是有时中间过程就是如此重要.

完美解码 20110601v2

- BugerFly - cnBeta.COM
完美者解码是一款能实现各种流行视频、HDTV回放及编码的全能型影音解码包,自带 Media Player Classic、KMPlayer、PotPlayer 三款流行播放器,支持简、英语言平台下安装,能播放AVI、VCD、DVD、MPG、MP4、RMVB、TS、TP、EVO、M2TS、MKV、OGM、MOV、SCM、CSF、FLV等众多种格式的影音文件.

完美解码 2011.10.20

- Jack - cnBeta.COM
完美者解码是一款能实现各种流行视频、HDTV播放及编码的全能型影音解码包,自带 Media Player Classic、KMPlayer、PotPlayer 三款流行播放器,支持简、英语言平台下安装,能播放AVI、VCD、DVD、MPG、MP4、RMVB、TS、TP、EVO、M2TS、MKV、OGM、MOV、SCM、CSF、FLV等众多种格式的影音文件.

完美的代码——Programmers(24)

- 山石 - FeedzShare
来自: 西乔的九卦 - FeedzShare  . 发布时间:2011年06月02日,  已有 2 人推荐. 慢工出细活,只要你要求快,需求分析之类的步骤都只能是过长而已. 载于《程序员》杂志2011年第4期. 这个系列的漫画讲述程序员——这种神秘人类的囧事,故事多来源于我身边的程序员朋友,且以互联网开发背景为主.

完美簡繁轉換

- kivava - 鳥毅的Blog
因為之前一直用ConvertZ轉影片字幕檔,但是我在家用Mac居多,加上聽完HITCON 2011後在公司也不太想用Windows了(大誤),而且ConvertZ必須自己指定檔案的編碼,對於多檔轉換時很麻煩(找的字幕檔編碼不一定是某種編碼),希望能有更方便的解決方案. 原本想要用開放中文轉換,opencc,但是在WIndows編譯上遇到困難,後來又看到convert2utf8,本以為它會自動轉換編碼,用了才發現不會,再找了Universal Encoding Detector,自己加上自動編碼偵測,並在轉換檔加上BOM.

完美的铁丝雕塑

- 梁振华 - poboo 创意娱乐
完全自学成才的插画设计师Gavin Worth,在SFMoMA 展览他第一个铁丝雕塑作品后,继续给完成了更多优秀的雕塑作品,他用铁丝线条,勾刻出惊人的美丽,让人深深着迷. 摄影镜头下的完美世界(54P).

不完美得很美

- hanson - 穿过记忆的河流
五月初,新加坡出了一则很特别的广告,在电视上播出后,引起极大的争议. 这则广告是由新加坡国家级的“小区发展部”所拍摄(Ministry of Community Development, Youth and Sports),它是一则“支持婚姻”(pro-marriage)的公益广告. 主角是一位 印度裔太太,悼念着她刚死去的华裔老公.