本文主要内容:
LaTeX的安装
LaTeX和beamer的基础语法
关于引用、主题设置
制作插图的注意事项
如何制作动画
LaTeX是一种常被用于期刊、论文的排版的排版引擎。不像Microsoft Word,它是一种“所见非所得”的工具,但并不难学,不需要编程基础,一般两小时就可上手。更多的信息可参阅《LaTeX是什么?有什么用?》。
首先需要安装一种LaTeX的发行版,这里我们选择最通用的TeX Live。其官网上提供了许多下载方式与媒介。一般使用官方的在线安装工具就可以了。除此以外,在清华大学开源软件镜像站上面也有TeX Live最新版的镜像以供离线安装。
需要注意:
TeX Live需要的安装体积比较大,约6GB
官方工具是在线安装的,安装速度会受到网速的影响
安装文件全部下载完后,安装过程本身的索引过程时间比较长,需要约45分钟
如果你希望方便快捷地创建 .tex
文件的话,你应当使用一种LaTeX编辑器。以下是几个例子:
TeXworks: TeX Live自带的编辑器,十分轻量级,界面较为简陋,代码高亮功能较弱。
WinEdt: CTeX套装自带的编辑器,对中文支持较好,但是自动填充和代码高亮能力较弱。
TeXstudio(推荐): 非常强大的编辑器,自动填充、语法检查、代码高亮能力都非常强。
Sublime Text: 非常受欢迎的多语言工具,但是在用它码LaTeX的时候需要一些比较繁琐的配置过程
Visual Studio Code: 界面美观、自动填充能力很强的多语言编辑器。
我个人推荐TeXstudio。
beamer
是LaTeX的一种宏包,提供了制作幻灯片必须的一些命令。这个宏包已经内置在大部分的主流发行版中,一般情况下不用特意去安装了。
.tex
文件可分成两个部分:导言区和正文区。一篇完整的 .tex
文件一般是长这样的:
\documentclass{article}
...
\usepackage{graphicx}
...
\begin{document}
...
\end{document}
其中,在 \begin{document}
之前的是导言区,我们在这里声明以下内容:文章的类型;全文标题、作者;需要加载的“插件”(即宏包);宏包的全局设置等。例如设置文章的标题:
\title{Hello, \LaTeX\ !}
\author{Qian-Qing}
\date{\today}
在 \begin{document}
到 \end{document}
之间的所有部分是 .tex
文档的正文区。在这里,我们输入自己创作的内容,并提交给TeX引擎排版。
本文只简述最基本的原理,有关具体文本输入的方法请参见《LaTeX基本文本输入》。
在LaTeX中输入表格、列表和图片都有特殊的语法,具体请参见《LaTeX文档组织结构》。
LaTeX中有三种列表环境,分别是生成无序号列表的 itemize
,生成有序号列表的 enumerate
和能添加描述的 description
环境。这些列表是可以嵌套的(虽然有时候效果不好),就像下面这个例子所展示的一样。
\begin{enumerate}
\item 第一层是有序号的列表。
\begin{itemize}
\item 第二层是无序号列表,
\item[记住] 用方括号括起来的内容可以是“小标题”
\end{itemize}
\item 你必须记住:
\begin{description}
\item[列表不会] 让所有事情都看起来很漂亮有序
\item[但是它能够] 让一些东西以非常美丽的方式展现出来
\end{description}
\end{enumerate}
在LaTeX中, tabular
环境能够用来绘制最基础的表格。我们可以用这样的命令来进入 tabular
环境:\begin{tabular}{table spec}
。其中第二个花括号里面的 table spec
定义了表格的样式。
在这个环境中:\hline
命令表示横线, |
表示竖线;用 &
来分列,用 \\
来换行;每列可以分别采用居左、居中、居右等横向对齐方式,分别在 {table spec}
里面用l、c、r来表示。
\begin{tabular}{|l|c|r|}
\hline
操作系统 & 发行版& 编辑器\\
\hline
Windows & TeX Live & Texstudio \\
Unix/Linux & teTeX & Kile \\
Mac OS & MacTeX & TeXShop \\
\hline
\end{tabular}
在LaTeX中插入图片建议使用 graphicx
宏包。插入图片的基础命令是:\includegraphics[key=value,...]{filename}
。在插入图片时,有几种可选参数可以调节,分别是:
width:把图形缩放到指定的宽度
height:把图形缩放到指定的高度
angle:逆时针旋转图形
scale:缩放图形
\begin{figure}
\centering
\includegraphics[angle=45, width=0.7\textwidth]{sign.eps}
\caption{Signature}
\label{fig:sign}
\end{figure}
同时你可以直接在LaTeX中绘制化学结构式,而完全不需要使用ChemDraw之中收费的软件!具体的方法请参见《LaTeX绘制化学结构式》
为了使用 beamer
制作幻灯片,你需要在导言区加载以下语句:
\usepackage{beamer}
beamer
中所有的内容都被放在一个被称为 frame
的环境中,在frame外的内容会被LaTeX用奇怪的方法排版到幻灯片上,影响效果,请大家将自己的正文放在 frame
中。
下面是标题页面的写法:
\begin{frame}
\titlepage
\end{frame}
我们也可以通过命令 \tableofcontents
来生成目录(需要在 frame
环境外使用 \section
命令),同时用 \frametitle{
命令来为这页幻灯片加上标题:
\begin{frame}
\frametitle{Catalogue}
\tableofcontents
\end{frame}
在普通的论文中进行引用是一件非常方便快捷的事情,方法可参见《在LaTeX里处理引用》,但是在幻灯片中引用就稍显麻烦一些。
为了在幻灯片中引用,我们仍旧需要创建自己的 .bib
文件。创建方法多种多样,有快有慢,希望学习比较方便的方法可以参考《LaTeX中三分钟搞定引用》。
我们需要使用 biblatex
宏包。同时对它进行一定的设定。这里我选择让引用形式为右上角的数字。
\usepackage[backend=bibtex,style=numeric,sorting=none]{biblatex}
\addbibresource{
通常的引用方法会让参考文件集中出现在最后。这里我们使用 \footfullcite
命令在幻灯片每页的页脚处进行引用。
首先在导言区中输入以下命令让脚注文字变小一些。
\setbeamerfont{footnote}{size=\tiny}
在正文中引用的方法如下:
... Ugi Reaction \footfullcite{
学术报告所用的幻灯片有时候需要以下元素:
首页或者每页的页脚页眉要有学校的logo
每页页脚要有演讲标题、演讲者姓名和页数
有时候会有一整个边栏提供演讲的组织结构信息
这些需求都可以通过使用预设的beamer主题来解决。
下述所有设置都在导言区完成。
在首页设置logo的方法如下:
\titlegraphic{\includegraphics[height=1.5cm]{tsinghua-logo.eps}}
在每页都出现logo:
\logo{\includegraphics[height=1cm]{tsinghua-logo.eps}}
有一个beamer主题能够完美地满足这些需求。
\usetheme{CambridgeUS}
有一个beamer主题能够完美地满足这个需求。
\usetheme{Hannover}
如果你的插图直接来自于某一篇文献,那么这个图片很可能是栅格化的而非矢量。
有这样几种方法得到比较高清的图片:
查看文章对应的页面并直接下载插图
使用Photoshop打开pdf文件并选择“图片”选项以提取图片
在ResearchGate上向作者索要高清原图
如果你的图片是你自己画的,那么你需要注意,在LaTeX中使用矢量图片不仅可以大大减小图片的大小,同时也可以让页面的显示效果上两三个层次。
常用的矢量绘图工具有Adobe Illustrator等。如果你使用matlab或者python matplotlib,请记得将自己的图片保存成 .eps
格式(最优)或者 .svg
格式。
其实你也可以直接在LaTeX中使用 tikz
绘图,但是其语法较为复杂,学习成本过高,不建议学习。
在展示中你有时会通过动画来控制信息密度。
基础的方法是用 \pause
命令。这个命令的作用非常简单,就是在命令处“截断”,并让剩下的内容放到下一张幻灯片上。
你也可以通过下面的方法让列表一条条出现。
\begin{itemize}[]
\item First point.
\item Second point.
\item Third point.
\end{itemize}
假设你希望同时显示第二和第三点,你可以将<2->添加到第二个或第三个 \item
命令。但是,若在开头添加新项目,则需要进行重新编号,故更好的方法是使用另一种声明方式:
\begin{itemize}[]
\item First point.
\item<.-> Second point.
\item Third point.
\end{itemize}
关于更加复杂的动画制作方法,可以参考 beamer
的官方指南。
http://mirrors.ctan.org/macros/latex/contrib/beamer/doc/beameruserguide.pdf