LaTeX
LaTeX 是基于 TeX 的文档排版系统。TeX 是当初 Knuth 教授为了写作 TAOCP 而开发的个人排版软件,而 LaTeX 是 Lamport 博士为了编写自己的书籍而设计的。LaTeX 实际上就是用 TeX 语言编写的一套宏代码,拥有比原来 TeX 格式(plain TeX)更为规范的命令和一整套预定义的格式,隐藏了不少排版上的细节。
搭建 LaTeX 环境
TeX/LaTex 并不是单独的程序,而是复杂的软件包,里面包含了排版的专业引擎、编译脚本、格式转换工具、管理界面、支持工具、字体及数以千计的宏包和文档。一个 TeX 发行版就是把所有这些部件集合起来打包发布的软件。现在最为流行的发行版为 CTeX 套装和 TeX Live。前者是 Windows 下面的软件,后者适用于各种操作系统。这里以 TeX Live 为例。
TeX Live 是由 TUG(TeX User Group)发布的一个发行版。
参考资料
安装前准备
下载 TeX Live 镜像
本机环境为 64 位 Ubuntu 16.04,下载发型版为 Tex Live 2016。
删除旧版
|
|
安装 Perk-TK 模块
install-tl 是一个 perl 脚本,要在专家 GUI 模式安装,需要加入 XFT 支持的 Perl-TK 模块
|
|
安装主程序
挂载 ios 镜像文件
|
|
启动安装程序
在加入了 XFT 支持的 Perl-TK 模块后,可以用以下方法启动 GUI 专家模式进行安装:
|
|
- 选择安装方案。初级用户推荐直接选择 scheme-full 全部安装。如果磁盘空间有限也可以选择 small 或者 median 模式。高级用户可以选择 scheme-custom 进一步定制。这里我选择了 scheme-custom,并且在“进一步定制”里去掉了自己不会用到的一些语言包和 ConTeXt 相关组件。
- 由于这里是安装到系统里,因此 portable setup 选择了否,安装路径为默认。
- 选项里面选择默认为 A4 纸张大小,其它一些选项基本都选了是。其中要注意的是创建符号链接会在 /usr/local/bin 里面创建指向可执行程序的软链接,从而可以直接使用 latex,pdflatex 等命令,此外还可以使用 man latex 等命令查看帮助。
- 建议在最后的 get package updates 一项选否,等安装好了之后手动安装更新。
配置环境变量
配置 .bashrc文件,在文件最后加上
|
|
进入 home 目录下输入命令使得修改的环境变量生效
|
|
测试安装是否成功
|
|
安装完成
|
|
配置字体
XeTeX 和 LuaTeX 可以直接使用系统字体。然而 texlive 自带的字体并不在系统的字体目录里面。为了让系统可以使用 texlive 所带的字体,需要进行如下配置。
- 将 texlive 的字体配置文件复制到系统内
|
|
- 刷新系统字体缓存
|
|
更新源配置
配置合适的 CTAN 源可以加快宏包更新的网速,以中科大的源为例:
|
|
之后可以利用 tlmgr 进行网络更新。CTAN 上的包更新很频繁,所以即便是最新版的 texlive2016,其中也有大量的宏包需要更新(可能包括 tlmgr 程序本身)。
|
|
dummy package 安装
texlive2016 安装之后需要“告诉”系统 texlive 相关软件包都安装好了。这样在系统安装依赖于 tex 的软件(比如 R)时就不必重新下载软件仓库中的旧版 texlive 相关软件。也不会造成不同版本 tex 命令的冲突。dummy package 就是解决这样的软件依赖问题的“虚包”。
测试 LaTeX
这个时候,在 testTeX 文件夹下编写 hello.tex
|
|
编译即可生成 beamer 格式的 slide
|
|
这个时候测试中文是否可行
|
|
编译可以看到输出
不过编译的时候会出现 warning
|
|
其实貌似这个时候的中文字体已经好了? 编写 test.tex
|
|
使用命令 pdflatex,不知道为什么用 xelatex 不行
|
|
生成 pdf 文件
编辑器
Atom 编辑器
参考
组织文本
参考
- 一份其实很短的 LaTeX 总结
- LaTeX 数学公式
- LaTeX 入门,刘海洋
作者、标题、日期
保存并用 XeLaTeX 编译以下文档
|
|
在 导言区添加了有关作者、标题、日期,而在 document环境中,多了一个控制命令 maketitle。这个命令能够将导言区中定义的标题、作者和日期按照预定的格式显示出来。
章节和段落
保存并用 XeLaTeX 编译以下文档
数学公式
字体
\textrm{},可以在公式中插入正常文本(也可以直接在公式输入文本,但是会出现忽略空格分行等问题)\mathrm{},正常字体\mathit{},斜体\mathbf{},粗体符号 boldfont\mathbb{},空心粗体 blackboard\mathnormal{},正常字体
插入公式
- 在段落内插入公式:置于
$和$之间 - 在独立数学公式:置于
\[和\]之间 - 需要对行间公式进行编号,则
|
|
常用数学公式命令
| 项目 | 表示方法 | 示例 | 示例效果 |
|---|---|---|---|
| 上标 | ^ | x^2 | $x^2$ |
| 下标 | _ | x_2 | $x_2$ |
| 上划线 | \overline | \overline{m+n} | $\overline{m+n}$ |
| 下划线 | \underline | \underline(m-n) | $\underline{m-n}$ |
| 向量 | \vec | \vec{AB} | $\vec{AB}$ |
| 导数 | ' | y’y'' | $y’y’'$ |
| 平方根 | \sqrt | \sqrt{x} | $\sqrt{x}$ |
| 分数 | \frac{}{} | \frac{4}{a+b} | $\frac{4}{a+b}$ |
| 求和 | \sum | \sum_{i=1}{n}a_i | $\sum_{i=1}^{n}a_i$ |
| 乘积 | \prod | \prod_{i=1}(n)a_i | $\prod_{i=1}^{n}a_i$ |
| 积分 | \int \iint | \iint_a^b f(x)dx | $\iint_a^b f(x)dx$ |
| 极限 | \lim | \lim_{n\to\infty}\frac{1}{n} = 0 | $\lim_{n\to\infty}\frac{1}{n} = 0$ |
常用符号
常用函数
矩阵
不同分隔符
amsmath的 pmatrix,bmatrix,Bmatrix,vmatrix, Vmatrix可以在矩阵两边加上各种分隔符。
|
|
显示效果如下:
$$ \begin{pmatrix} a&b\c&d \end{pmatrix} \quad \begin{bmatrix} a&b\c&d \end{bmatrix} \quad \begin{Bmatrix} a&b\c&d \end{Bmatrix} \quad \begin{vmatrix} a&b\c&d \end{vmatrix} \quad \begin{Vmatrix} a&b\c&d \end{Vmatrix} $$
行内公式矩阵
使用 smallmatrix环境,可以生成行内公式的小矩阵
|
|
效果
Marry has a little matrix $ ( \begin{smallmatrix} a&b\\c&d \end{smallmatrix} ) $.
带点矩阵
|
|
效果
$$ A = \begin{bmatrix} a_{11} & \dots & a_{1n} \ & \ddots & \vdots \ 0 & & a_{nn} \end{bmatrix}_{n\times n} $$
无括号矩阵
|
|
效果
$$ \sum_{\substack{0<i<n \ 0<j<i}} A_{ij} $$
配对括号
在数学公式中,如果直接使用括号,得到的公式会比较简陋,例如
|
|
效果
$$ \lim_x(1+\frac{1}{x})^x = \mathrm{e} $$
我们可以用 \left和 \right命令来自动调整大小的括号,例如
|
|
效果
$$ \lim_x \left (1+\frac{1}{x} \right)^x = \mathrm{e} $$
多行公式
有的公式特别长,我们需要手动为他们换行;有几个公式是一组,我们需要将他们放在一起;还有些类似分段函数,我们需要给它加上一个左边的花括号。
长公式
不对齐
无须对齐的长公式可以使用 multline 环境
|
|
效果
$$ \begin{multline} x = a+b+c+{} \ d+e+f+g \end{multline} $$
如果不需要编号,可以使用 multline* 环境代替
对齐
需要对齐的公式,可以使用 aligned 次环境来实现,它必须包含在数学环境之内。
|
|
效果
$$ \begin{aligned} x ={}& a+b+c+{} \ &d+e+f+g \end{aligned} $$
公式组
无需对齐的公式组可以使用 gather 环境,需要对齐的公式组可以使用 align 环境。他们都带有编号,如果不需要编号可以使用带星花的版本。
|
|
效果
$$ \begin{gather} a = b+c+d \ x = y+z \end{gather} $$
$$ \begin{align} a &= b+c+d \ x &= y+z \end{align} $$
分段函数
分段函数可以用 cases次环境来实现,它必须包含在数学环境之内。
|
|
效果
$$ y=\begin{cases} -x,\quad x\leq 0 \ x,\quad x>0 \end{cases} $$
自动化工具
绘制图表
演示文稿
-
No backlinks found.