楼主: oliyiyi
9716 2

LaTeX 如何将数学公式写得漂亮? [推广有奖]

版主

已卖:2997份资源

泰斗

1%

还不是VIP/贵宾

-

TA的文库  其他...

计量文库

威望
7
论坛币
27300 个
通用积分
31674.3271
学术水平
1454 点
热心指数
1573 点
信用等级
1364 点
经验
384134 点
帖子
9629
精华
66
在线时间
5508 小时
注册时间
2007-5-21
最后登录
2025-7-8

初级学术勋章 初级热心勋章 初级信用勋章 中级信用勋章 中级学术勋章 中级热心勋章 高级热心勋章 高级学术勋章 高级信用勋章 特级热心勋章 特级学术勋章 特级信用勋章

楼主
oliyiyi 发表于 2016-1-11 17:51:28 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:李阿玲
链接:https://www.zhihu.com/question/29816700/answer/46629430
来源:知乎

TeX以及LaTeX中的数学公式的书写,主要是两个方向的问题。第一个问题是源代码如何组织,如何编写,或者说怎么样让代码看起来清晰,维护起来方便快速。第二个问题是对于公式本身的处理,比如如何挑选必要的数学宏包,如何挑选必要的数学字体,如何挑选必要的示意图宏包等。

第一个大问题,源代码的组织。我们通常可以看见下面这样的代码:
关于一元二次方程
  1. $ax^2+bx+c=0$
复制代码

的解
实际上我们可以在公式内加入适当的空格,空格并不会影响最终的输出,可以有:
关于一元二次方程
  1. $ax^2 + bx + c = 0$
复制代码

的解
在具体的环境内,我们还可以加入适当的缩进:
  1. \begin{equation*}
  2.   n^2 + m^2 = k^2
  3. \end{equation*}
复制代码


更如:
  1. \begin{multline} \tag{2}
  2.   \sum_{t \in \mathbf{T}} \int_a^t
  3.     \biggl\lbrace \int_a^t f(t - x)^2 \,
  4.       g(y)^2 \,dx \biggr\rbrace \,dy \\
  5.   = \sum_{t \notin \mathbf{T}} \int_t^a
  6.     \biggl\lbrace g(y)^2 \int_t^a
  7.       f(x)^2 \,dx \biggr\rbrace \,dy
  8. \end{multline}
复制代码


或:
  1. \begin{align}
  2.   (a + b)^3 &= (a + b) (a + b)^2        \\
  3.             &= (a + b)(a^2 + 2ab + b^2) \\
  4.             &= a^3 + 3a^2b + 3ab^2 + b^3
  5. \end{align}
复制代码


及:
  1. \begin{CD}
  2.   \cov (L) @>>> \non (K) @>>> \cf (K)  \\
  3.     @VVV          @AAA         @AAA    \\
  4.   \add (L) @>>> \add (K) @>>> \cov (K) \\
  5. \end{CD}
复制代码


实际上,上面涉及到的公式在代码中换行的问题,只是在小屏幕的时候才建议折成那样。如果你的屏幕足够大,放到一行里也是不错的,但是前提是你需要有一个大大的屏幕。(有个大屏幕,干啥都爽!啊,此处有捐赠广告:欢迎捐赠到我的支付宝13641344123。)

第一个问题下面,还涉及到一些惯用法的问题,也就是说写的时候要注意一些公式的变形形态,换一种形态会让公式和正文相处的更好,比如可以不影响段落之间的间距等。有:
及:
(这些图我说过很多次了……)上图的这些变形形式,其实现在很多编辑都不一定会改成图上的替换形式的,第一是那些编辑们懒的可以,第二是那些编辑缺乏排版相关的修养,所以我一直推荐用户自己调整自己的公式形式。写公式和写文章一样,遣词造句很重要,写文章要换词语,写公式也自然要考虑到用什么好的合适的形式。

第二大点涉及到的其实是技术问题而已,上一个问题其实是任何写程序的人都会碰到的一个习惯问题而已。技术问题的解决,就是要看足够多的reference,文章也好,书籍也好。标准的LaTeX2e在底层封装了不少继承自plain TeX中的数学符号。但,实际上,LaTeX中既有的数学符号和环境是远远不够写数学类文章的。

LaTeX环境下,最重要的数学宏包是AMS系列的。首先是这些主要提供环境的包:
  • amsmath,最基本的数学包
  • amscd,绘制交换图
  • amsthm,制作引理
  • amsxtra,对于旧式数学式的支持
  • upref,Roman体的\ref输出
下面是提供字体的包:
  • amsfont,定义了\mathfrak和\mathbb,另有诸多符号
  • amssymb,另一个定义了诸多符号的包
  • eufrak,Euler Fraktur
  • eucal,定义了Euler字体版本的\mathcal
对于AMS-Math,需要掌握下面最基本的几个环境:
  • equation equation* 单行单公式
  • multline multline* 多行公式,没有对齐操作,只给一个公式编号
  • gather gather* 多个公式,可添加多个公式编号
  • align align* 多个公式对齐,但只能对齐公式内部的一个部分
  • flalign flalign* 多个公式对齐,可对公式内的多个部分
  • split 分割公式
  • gathered 和gather的区别是放在了一个minipage里
  • aligned 也是minipage的问题
此外需要掌握的就是大量的符号是怎样的,比如\langle、\rangle这种东西。还有下面这种东西(请各位看好图例,主动加载相关的宏包):
及:

还有符号上需要叠加的重音符啥的:

还有一点需要注意的是数学公式的间距,有几个命令需要用到:




二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:LaTeX 数学公式 Late atex LAT 漂亮 如何 数学

缺少币币的网友请访问有奖回帖集合
https://bbs.pinggu.org/thread-3990750-1-1.html

沙发
seahhj 发表于 2016-1-11 23:00:44
thanks for sharing

藤椅
albertwishedu 发表于 2016-1-17 13:11:11
太漂亮了。。。。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-27 13:29