LaTeX将文章的排版以代码的形式呈现,这种方式很符合程序员以及科学工作者的审美和工作习惯,但如果强调太多LaTeX不常用的特性,会导致很多初学者望而却步,早早弃坑回归难用的word。同时,网上关于LaTeX的文档极多,还有大量多年未更新的博客,内容早已过时无法兼容现在的版本,很容易造成误导增加学习成本。

因此,本文将场景设定为需要按照规定期刊或报告规定的格式撰写文章,省去不必要的说明,带你快速上手LaTeX(文中也会将LaTeX其他一些进阶用法作为拓展资料整理,供日后查阅)。

一、环境的配置——TeXlive+TeXstuido

1. 关于 TeX Live

TeX Live 是 TUG (TeX User Group) 维护和发布的 TeX 系统,可说是「官方」的 TeX 系统。其相比其他的系统优势在于能够保证更新,兼容性强,也能保持在跨操作系统平台、跨用户的一致性。参见TeX Live 的官方站点。

1.1 Mac 用户

TeX Live 在 macOS/OS X 上的名字是 MacTeX,它的官方站点。可以在这里下载 MacTeX 的安装器,而后安装 MacTeX。

如果你身处中国大陆,发现下载速度很慢,可以尝试清华大学和中国科技大学的镜像站。

1.2 Windows用户

TeX Live 的当前版本是 2018,你可以从官方站点下载它们的安装包。点击链接,将会「自动选择」距离你最近的镜像下载。同样也可以尝试清华大学和中国科技大学的镜像站。

安装需要使用虚拟光驱软件,推荐一个绿色工具即UltraISOv9.6.2.3059,打开界面如下,加载到虚拟光驱:

打开虚拟光驱:

右键单击 install-tl-advanced.bat,以管理员权限执行;

里面基本上可以选默认的,但最后两个例外(TeXworks比较陈旧,后者是更新可能比较慢):

然后点击“安装 TeX Live”,可以看到这样的界面:

安装完成的画面:

同时注意完成后要把cmd关掉!

安装好TeXlive之后若想happy latexing,还需要有一个编辑器,可供选择的有很多,如LyX、TeXworks、TexStudio、WinEdt、Emacs、Sublime Text、Atom、Visual Studio Code等,有兴趣可以参考知乎——有哪些好的编辑器。本文选用的是TeXstudio,也推荐新手使用这个编辑器。

2、安装TeXstudio

首先从GitHub官网上找到对应的下载文件:

TeXStudio - GitHub官方地址

选择安装路径 > install

安装好后需要更改一些设置:

Options > Configure TeXstudio

> General > Language改成zh_CN(中文化)

> Build
> Default Bibliography Tool设置成BibTeX(此处是管理参考文献的相关设置,下文有说明)

> Default Compiler设置成XeLaTeX(为了实现对中文的支持)

至此我们的写作环境就配置好了!

二、写个简单的文档试试

启动TeXstudio,界面如下

在编辑框中,输入如下内容:

\documentclass{article}
% 这里是导言区
\begin{document}
Hello, world!
\end{document}

将文档保存在你希望的位置后,按下绿色的编译按钮。

一会儿,如果没有意外,屏幕的右边就会出现编译之后结果。如下图:

同时会自动生成PDF文件在.tex文件所保存的目录下。

此处的第一行\documentclass{article}中包含了一个控制序列(或称命令 / 标记)。所谓控制序列,是以反斜杠\开头,以第一个空格或非字母 的字符结束的一串文字,他们并不被输出,但是他们会影响输出文档的效果。这里的控制序列是documentclass,它后面紧跟着的{article}代表这个控制序列有一个必要的参数,该参数的值为article. 这个控制序列的作用,是调用名为 “article” 的文档类

其后出现了控制序列begin,这个控制序列总是与end成对出现。这两个控制序列以及他们中间的内容被称为“环境”;他们之后的第一个必要参数总是一致的,被称为环境名。

只有在 “document” 环境中的内容,才会被正常输出到文档中去或是作为控制序列对文档产生影响。因此,在\end{document}之后插入任何内容都是无效的。

\begin{document}\documentclass{article}之间的部分被称为导言区。导言区中的控制序列,通常会影响到整个输出文档。

1. 中英混排

TeX 系统是高教授开发的,当初并没有考虑到亚洲文字的问题。因此早期的 TeX 系统并不能直接支持中文,必须要用其他工具先处理一下(或者是一些宏包之类的)。旧方法不在本教程中赘述,如遇到旧文档的兼容性问题,可参考《一份其实很短的LaTeX入门文档》。

但是现在,XeTeX 原生支持 Unicode,并且可以方便地调用系统字体。可以说解决了困扰中国 TeX 使用者多年的大问题。

此外,除去中文支持,中文的版式处理和标点禁则也是不小的挑战。好在由吴凌云和江疆牵头,现在主要由刘海洋和李清维护的 ctex宏包 / 文档类一次性解决了这些问题。ctex宏包和文档类的优势在于,它适用于多种编译方式;在内部处理好了中文和中文版式的支持,隐藏了这些细节;并且,提供了不少中文用户需要的功能接口。

在 TeXworks 编辑框中输入以下内容,保存,使用 XeLaTeX 编译:

\documentclass[UTF8]{ctexart}
\begin{document}
你好,world!
\end{document}

如果没有意外,你将会看到类似下图的输出结果:

相较于之前的例子,这份代码只有细微的差异:

1.文档类从 article 变为 ctexart

2.增加了文档类选项 UTF8

2. 组织文章

保存并用 XeLaTeX 编译如下文档,查看效果:

\documentclass[UTF8]{ctexart}
\title{你好,world!}
\author{Liam}
\date{\today}
\begin{document}
\maketitle
\section{你好中国}
中国在 East Asia.
\subsection{Hello Beijing}
北京是 capital of China.
\subsubsection{Hello Dongcheng District}
\paragraph{Tian'anmen Square}
is in the center of Beijing
\subparagraph{Chairman Mao}
is in the center of 天安门广场。
\subsection{Hello 北京}
\paragraph{北京} is an international city。
\end{document}

在文档类

article/ctexart 中,定义了五个控制序列来调整行文组织结构。他们分别是

\section{·}

\subsection{·}

\subsubsection{·}

\paragraph{·}

\subparagraph{·}

3. 如何查看当前操作系统的字体

按照如下步骤打开系统命令行:

在搜索栏输入cmd

命令提示符右键 > 以管理员身份运行

[图片上传失败...(image-7358e8-1532508080085)]

在系统命令行中输入如下命令:

fc-list :lang=zh-cn > C:\font_zh-cn.txt

打开 C 盘根目录下的 C:\font_zh-cn.txt 纯文本文档,里面的内容就是你当前系统可用的全部中文字体, 为了方便观看,我用的Visual Studio code打开,效果如下:

其中的每一行,都代表着一个可用的字体 。我们可以看到图中的倒数第五行

C:/WINDOWS/fonts/simsun.ttc: SimSun,宋体:style=Regular,常规

出现了之前文档里调用的字体

SimSun,此处表明该字体有两个表示名:宋体SimSun

恭喜你,至此已经掌握了TeXlive+TeXstudio的基本用法,可以编辑自己的文档了,同时,也可以继续向下看,有了上面的知识能帮助你更好的理解模板的结构。

三、使用模板写作

使用模板写作,适用于需要按照规定期刊或报告规定的格式撰写文章的工作者,同时也很适合新接触LaTeX写作的新手感受这种写作方式的乐趣,毕竟手动编辑一套复杂的论文需要花费大量时间,这脱离了LaTeX之类排版语言想让写作者关注内容本身的初衷。下面将介绍初学者在使用模板写作时需要用到的技巧。

1. 模板的获取

建议在使用中自己整理几个自己常用的模板,从网上下载的模板只能提供一个大体的方向,有时也存在版本不同造成的兼容性问题,细节需要自己完善。

  • LaTeXtemplates.com 网站是非常不错的模板分享网站,收集了包括书信,报告,论文,演示文稿,简历等等模板,整体收集模板质量很不错,非常推荐,该网站逐步退出了排版和模板开发的服务,有兴趣可以多多了解。

  • 在 https://github.com/MartinThoma/LaTeX-examples 有作者收集的非常好的模板收集,也收集了大量的tikz等等例子,可下载,选择自己喜欢的模板使用。

  • 在 http://uk.tug.org/training/thesis/ 有不少收集好的国外高校论文模板。

  • https://www.overleaf.com/也可以找到很多期刊的模板代码,还支持在线编辑,所见即所得,效果如下:

  • LaTeX开源小屋里也有很多论文模板资源。

2. 模板的使用

这里以北京航空航天大学学报提供的模板为例,把模板下载到电脑中后,选择.tex类型的文件:

构建并查看:

可以在左侧结构栏跳转到相应区域修改内容,也可以在右侧PDF阅览区右键 > 跳转到源直接跟踪到相应代码区,进行修改即可。

下面将分别介绍一些常用的编排技巧。

2.1文献引用

\documentclass{ctexart}\bibliographystyle{plain}   %引用的样式%
\begin{document}这是一个参考文献引用:\cite{name1} %大括号内为相应文献的引用标签\bibliography{text}     %导入参考文献库文件%
\end{document}

输入上述代码后进行构建,完成后点击左侧结构栏的参考文献 > text

会提示是否创建.bib文件,选择是

这便是你的文献库,如何添加参考文献信息呢?有两种方式,第一种当然是自己手动整理,第二种则非常方便,打开谷歌学术:

输入文献名之后,在搜索结果中点引用:

选择以BibTeX格式引用:

将内容复制到之前生成的文件库text.bib文件中

@article{ferrari2006raman,  %此处为引用标签title={Raman spectrum of graphene and graphene layers},author={Ferrari, Andrea C and Meyer, JC and Scardaci, V and Casiraghi, C and Lazzeri, Michele and Mauri, Francesco and Piscanec, S and Jiang, Da and Novoselov, KS and Roth, S and others},journal={Physical review letters},volume={97},number={18},pages={187401},year={2006},publisher={APS}
}

将文献的引用标签与原文对应好:

构建完成后,效果如下:

2.2公式怎么办

为了使用 AMS-LaTeX 提供的数学功能,我们需要在导言区加载amsmath宏包:

\usepackage{amsmath}
  • 数学模式

    LaTeX 的数学模式有两种:行内模式 (inline) 和行间模式 (display)。前者在正文的行文中,插入数学公式;后者独立排列单独成行。

    在行文中,使用$ ... $可以插入行内公式,使用\[ ... \]可以插入行间公式,如果需要对行间公式进行编号,可以使用equation环境: \begin{equaion} … \end{equation}

    行内公式也可以使用\(...\)来插入,略显麻烦。无编号的行间公式也可以使用$$ ... $$来插入,但是这样做会改变行文的默认行间距,不推荐。

LaTeX的公式编辑可以说是其最为犀利的部分之一了,但其公式语法非常繁琐,不过令人高兴的是,这里有一个在线LaTeX公式编辑器,非常方便直观:

2.3表格怎么办

巧了,表格也有类似的工具:Creat LaTeX tables online

2.4图片呢

在 LaTeX 中插入图片,有很多种方式。最好用的应当属利用graphicx宏包提供的\includegraphics命令。比如你在你的 TeX 源文件同目录下,有名为 a.jpg 的图片,你可以用这样的方式将它插入到输出文档中:

\documentclass{article}
\usepackage{graphicx}
\begin{document}
\includegraphics{a.jpg}
\end{document}

图片可能很大,超过了输出文件的纸张大小,或者干脆就是你自己觉得输出的效果不爽。这时候你可以用

\includegraphics控制序列的可选参数来控制。比如

\includegraphics[width = .8\textwidth]{a.jpg}

这样图片的宽度会被缩放至页面宽度的百分之八十,图片的总高度会按比例缩放。

\includegraphics控制序列还有若干其他的可选参数可供使用,一般并用不到。感兴趣的话,可以去查看该宏包的文档。

Happy LaTeXing!

本文改自:https://www.jianshu.com/p/3e842d67ada2

LaTeX零基础入门教程及模板使用技巧相关推荐

  1. LaTex零基础入门教程(含附件:安装包+LaTex文本编译软件+SCI期刊LaTex投稿图文流程)

    LaTex是一种基于ΤΕΧ的排版系统,使用LaTex最大的好处就是"只需要写内容就可以,至于内容排版就不是我们的事".LaTex的使用可以大大提高我们科研论文写作的工作效率.平时写 ...

  2. SEO零基础入门教程(外链的发布和软文编写)

    seo的作用是众所周知的,对网站进行seo优化,可以给网站带来大量的搜索引擎流量.但是想要做好网站优化也有难度,尤其是对于seo新手来说,因为缺乏理论和实战,所以seo新手需要多加练习.那么具体seo ...

  3. SEO新手入门,SEO零基础入门教程,新手做SEO怎么做

    seo的作用是对网站进行seo优化,可以给网站带来大量的搜索引擎流量.但是想要做好网站优化也有难度,尤其是对于seo新手来说,因为缺乏理论和实战,所以seo新手需要多加练习.那么具体seo新手入门应该 ...

  4. python怎么输出浮点数_python 零基础入门教程第 2 章:基本数据类型 (一)

    一.什么是数据类型 编程语言通过一些复杂的计算机物理底层机制,创造不同类型的数据,用来表示现实世界中的不同信息,以便于计算机更好的存储和计算. 每种编程语言都会有一些基本的数据类型用来表示现实世界中的 ...

  5. 视频教程-Python零基础入门教程-Python

    Python零基础入门教程 从2012年从事互联网至今有7年软件编程经验,曾任职国内北京互联网公司,中南林业大学授课Python 现任逻辑教育Python课程负责人,精通Python语言,精通人工智能 ...

  6. 九宫怎么排列和使用_剪映零基础入门教程第三十七篇:一学就会系列之九宫格小程序配音...

    很多玩儿抖音的朋友都看过九宫格视频,但是并不是每个玩抖音的人都会制作这个九宫格视频,实际这个需要借助小工具来帮忙,而常用抖音的朋友们会对剪映更加熟悉一些,且九宫格视频在剪映内的制作方式则比较简单.那么 ...

  7. 计算机pscs6教程,photoshop CS6零基础入门教程

    <photoshop CS6零基础入门教程>针对零基础学员开设,以教案和实际操作演示相结合的方式,详细地介绍adobe photoshop cs6的各项工具和命令.由浅入深.循序渐进地全面 ...

  8. finereport自学教程_办公物语丨Finereport零基础入门教程,你不可缺少的报表神器...

    原标题:办公物语丨Finereport零基础入门教程,你不可缺少的报表神器 ⌛ 小办又来了,快,搬好你的小板凳. 今天小办要着重讲一下 之前推文里提到过的制表神器. 当你逐渐发现Excel不能满足你的 ...

  9. 视频教程-ARDUINO零基础入门教程【代码编程篇】-Arduino

    ARDUINO零基础入门教程[代码编程篇] 精通各种单片机编程,有十年以上ARDUINO,51单片机/STM32/PIC/AVR编程,硬件设计,绘图,编程经验.熟悉各种常用传感器使用和物联网通讯 赵勇 ...

最新文章

  1. C++成员变量指针和成员函数指针【The semantics of funcitons】
  2. CRM与SCM整合 让企业供应链无缝连接
  3. python【力扣LeetCode算法题库】8-字符串转换整数 (atoi)
  4. 可拖拽的ImageButton
  5. GridView隐藏列, 并能读取列值的解决方法(转载)
  6. vue js table colspan rowspan
  7. 死锁与活锁的原因 与解决方法(附加“饿死”)
  8. 10分钟搞定kettle源码部署
  9. Binary Numbers(HDU1390)
  10. Anaconda下载的包在Spyder内导入报错
  11. uni-app、小程序项目分包经验之谈与天坑异常:RangeError: Maximum call stack size exceeded
  12. 渣男论(跟技术无关,随笔而已)——一蓑烟雨任平生
  13. 性能碾压Notepad++的文本编辑器UltraEdit,程序员必备
  14. 成都国税打造全能“电子税务局”
  15. Mysql分表,分区的区别和联系
  16. matlab 效度,量表的信度、效度检验方法小结
  17. 清理垃圾文件属于计算机安全维护吗,如何清理c盘垃圾文件
  18. Android实现录音功能及播放语音功能
  19. 知网 BibTeX自动生成(使用BibTeX引用中文参考文献)
  20. 解决:Conda报错InvalidArchiveError

热门文章

  1. 为什么文本框里的字只显示一半_word字体显示不全及显示一半怎么回事?
  2. CH341a烧录器烧录华硕BIOS
  3. UnityShader 简单护盾效果
  4. GPS导航电文——第二子帧数据解析
  5. [爬虫实战]利用python快速爬取NCBI中参考基因组assembly的相关信息
  6. 搭建私人网盘(可离线下载、在线播放)
  7. Java项目:ssm+jsp实现手机WAP版外卖订餐系统
  8. Python大小写转换
  9. 计算机控制字如何使用,字由怎么用?一款软件管理1594种字体 很多设计大神都在用...
  10. 正点原子的TPAD键用不了