每个 LaTeX 用户都应该使用的 9 个宏包
来源:互联网 发布:android手机助手源码 编辑:程序博客网 时间:2024/05/16 20:10
介绍
最开始,我建立这个博客是为了帮助 LaTeX 的新手,但后来随着 howtoTeX.com 的建立,博客的受众变得更广了,在我看来,这也不是件坏事。你所面临的挑战只会让你一直努力向前!然而,今天,这篇文章对于新手来说是非常有用的(译者注:对于我们国内大部分人来说都是值得一看的),在这篇文章中,我总结了每个
LaTeX 用户都应该使用的 9 个宏包!让我们开始吧!
宏包的顺序与其重要性无关,顺序是完全随机的。每节的首行是我调用宏包的常用方式,仅作参考!
amsmath
amsmath
宏包是 AMS(美国数学协会)系列宏包中最重要的宏包,这个宏包引入了一些改进的数学环境。比如:加载 amsmath
之后,我们可以使用 align
环境。我所有的行间公式都使用了 align
环境 (或者无编号版的 align*
环境),即便有时候公式不需要对齐。Lars Madsen 在 PracTeX 杂志上有篇文章也鼓励使用 amsmath
宏包的环境,详细参看 Avoid eqnarray!
。
geometry
使用 geometry
宏包来调整页面的页边距非常方便。整个文档默认的页边距可以通过这个宏包的选项来改变(置于\usepackage
之后的方括号内,比如 a4paper
),大部分情况下,我使用这个宏包(使用 a4paper
选项)来创建 A4 纸张以及相应的页边距。使用这个宏包,我们也可以改变某个特定页面的页边距,howtoTeX.com 上另外一篇文章介绍了怎么使用 geometry
宏包重新设定文档奇偶页的边距,详情参看 Two-sided LaTeX page margins。
graphicx
关于 graphicx
没啥特别的,但是它可能是所有宏包中最重要的宏包,这个宏包引入了插图命令 \includegraphics
,我们的文档如果需要插图都将用到它。
nag
事实上,如果你的代码没问题,这个宏包将不会做任何事情。注意:把这个宏包放在你的导言区的第一行(甚至在 \documentclass
之前)。它将会检测你文档中是否使用已经被淘汰了的宏包以及过时的命令,nag
的文档说明可以访问 CTAN-nag。
microtype
microtype
宏包可以改善了单词、字母的间距。它可能做了很多,但是大部分人察觉不到使用它之后文档的变化。但至少,加载了 microtype
之后,文档看起来更好,也更容易阅读。注意:如果有使用到字体宏包,需要将 microtype
宏包放在它们的后面,因为这个宏包对单词、字母的调整和字体是有关的。
siunitx
siunitx
宏包大大简化了写作科技文的 TeX 命令,科技文写作中很大一部分是单位、数字。这个宏包添加了一些命令,比如 \num
命令可以输出我们想要的各种方式的数字形式(比如科学记数法),而 \si
命令用来输出单位。我经常用到的命令是 \SI
和 \SIrange
。比如 \SI{10}{\hertz}
输出为 “10Hz”(这能有效避免输入错误,我可能会写成 HZ 或者 hz 而不是 Hz)。\SIrange
命令多一个参数:\SIrange{10}{100}{\hertz}
输出为 “10Hz to 100Hz”。
cleveref
另外一个非常有吸引力的宏包是 cleveref
。这个宏包引入了 \cref
命令,当使用这个命令用于交叉引用的时候(而不是 \ref
或者 \eqref
),根据引用的不同,它会自动添加一个单词前缀,引用 figure
环境,它会自动添加 “fig.”,而对于 equation
环境,它会自动添加 “eq.”。因此,这是一个用来简化写作的 LaTeX 宏包。之前有篇文章介绍了 cleveref
宏包,在那篇文章中,展示了如何修改引用对象前面的单词(比如 fig,eq),详情参看Automatic, clever references with cleveref
hyperref
hyperref
非常强大,你可以有非常多的可能性,其中最突出的特色是超链接。当引用一幅图的时候,引用与图形形成了链接,当你点击引用的地方,它会跳转到链接的图片处。并且 hyperref
可以让你插入 PDF 元数据到你的最终文档中。注意:作为一个经验法则,你应该在导言区的最后加入这个宏包,在所有宏包之后。也存在少数例外的情况:比如,本文提到的 cleveref
宏包,cleveref
宏包应该在 hyperref
之后。更多的例外情况可以参看:pkg load after hyperref。
booktabs
booktabs
宏包可以让我们创建没有竖线分隔的表格,这些分隔线在很多情况下是不必要的,并且很难看。使用booktabs
宏包创建表格比创建普通 LaTeX 表格更费劲。因此,我专门写了一篇文章,关于怎样使用 booktabs
宏包创建好看的表格,详情参看 create nice tables with booktabs
示例下载
我这里写了一个示例,主要是导言区部分,在这个示例文件中,上述所有的宏包都加载进去了,Happy TeXing!
- 每个 LaTeX 用户都应该使用的 9 个宏包
- 每个Linux用户都应该了解的命令行省时技巧
- 每个Linux用户都应该了解的命令行省时技巧
- 每个Linux用户都应该了解的命令行省时技巧
- 每个Linux用户都应该了解的命令行省时技巧
- 每个Linux用户都应该了解的命令行省时技巧
- 每个Linux用户都应该了解的命令行省时技巧
- 每个Linux用户都应该了解的命令行省时技巧
- 每个Linux用户都应该知道的命令行技巧
- 每个Linux用户都应该知道的命令行技巧
- 每个Linux用户都应该知道的命令行技巧
- 每个 Linux 用户都应该知道的命令行技巧
- 每个Linux用户都应该知道的命令行技巧
- 每个Android迷都应该使用的75个超酷App
- 每个Linux用户都应该了解的命令行省时技巧【转】
- 每个java 初学者都应该明白的
- 每个女孩都应该拥有的
- 每个程序员都应该读的书
- 基于maven的springmvc项目搭建
- Linux Oracle服务启动&停止脚本与开机自启动
- 解决 ORA-28547 连接服务器失败,可能是Oracle Net 管理错误
- clean项目之后R文件直接报错或者消失
- iOS-警告收录及科学快速的消除方法
- 每个 LaTeX 用户都应该使用的 9 个宏包
- java+html5的websocket简单实现BS聊天DEMO实例
- 在iOS开发中对日期处理的总结
- Boost 学习之算法篇 any_of 与 any_of_equal
- Linux开机进入图形桌面的方法
- Androidx学习笔记(23)-- 创建ListView展示数据库的数据
- 性能分析工具 TProfiler
- 主流的国外机房地址
- iOS UISearchController