1 LaTeX 简介

Leslie Lamport 开发的 LaTeX 是当今世界上最流行和使用最为广泛的TeX格式。它构筑在Plain TeX的基础之上,并加进了很多的功能以使得使用者可以更为方便的利用TeX的强大功能。使用LaTeX基本上不需要使用者自己设计命令和宏等,因为LaTeX已经替你做好了。因此,即使使用者并不是很了解TeX,也可以在短短的时间内生成高质量的文档。对于生成复杂的数学公式,LaTeX表现的更为出色。

LaTeX文档的写作流程如上图所示,对应其三个主要环节,可将LaTeX分为三层:底层是TeX基础编译源,中层是文本编译器,上层是PDF文稿查看器。LaTeX官网中提供了Linux,Mac和Windows下的安装套件。

2 LaTeX相关配置

2.1 TeX基础编译源

本地编译器主要有MiKTeXTeX LiveTexmaker。MiKTeX和TeX Live两者各有优劣,有兴趣的可以阅读一篇讨论帖,至于Texmaker笔者接触也不多~

除了本地编译外,还有在线LaTex编译器,例如ShareLaTeXJaxEdit等。

2.2 文本编译器

比较常见的有Sublime Text、TeXworks、TexStudio、WinEdt、Emacs、Notepad++、LyX等。在维基百科中有一篇对比网页,其中有超过20种文本编辑器。如果喜欢纯键盘编辑,可以尝试Vim~

笔者使用的是TeXstudio,集编辑和预览于一身,用起来比较方便,可适用于Linux,Mac和Windows操作系统,下图是Windows下的界面:

2.3 PDF文稿查看器

常用的有SumatraPDF,Adobe Acrobat,Adobe Reader等。笔者使用的是Adobe Acrobat集PDF浏览与编辑于一体,比较便捷。(但是SumatraPDF在打开和阅读PDF文件的时候,非常流畅,建议尝试。)

2.4 参考文献管理

考虑到写论文时参考文献的管理是无法逃避的问题,为此很有必要单独讲解一下,参考文献的管理,笔者认为有三种方法:

  • 最简单粗暴法:直接全手动写入,例如:
\begin{thebibliography}{1}

\bibitem{IEEEhowto:kopka}
H.~Kopka and P.~W. Daly, \emph{A Guide to \LaTeX}, 3rd~ed.\hskip 1em plus
0.5em minus 0.4em\relax Harlow, England: Addison-Wesley, 1999. \end{thebibliography}

  • 知乎中看到一种相对简单的管理方法,将参考文献复制粘贴到bib文件,然后在编辑文档中访问bib文件实现对参考文献的管理和引用,感兴趣的可以阅读;

  • 使用参考文献管理软件,如JabRef,笔者推荐使用该方法:

    在谷歌学术中搜索参考文献的BibTeX

使用JabRef添加到bib文件中:

直接调用bib文件即可:

\bibliographystyle{IEEEtran} % style
\bibliography{paper} % include the paper.bib

结束语:

笔者的配置为:MiKTeX+TeXstudio+Adobe Acrobat+JabRef~后来使用过程中发现有些宏包不全,就改为CTeX+TeXstudio+Adobe Acrobat+JabRef(其实CTeX中已经含有一些文本编辑器,例如WinEditTeXworks)就更好用了~

参考文献:

LaTeX 简介与安装的更多相关文章

  1. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  2. Java Gradle入门指南之简介、安装与任务管理

        这是一篇Java Gradle入门级的随笔,主要介绍Gradle的安装与基本语法,这些内容是理解和创建build.gradle的基础,关于Gradle各种插件的使用将会在其他随笔中介绍.    ...

  3. 细细品味Storm_Storm简介及安装

    Storm是由专业数据分析公司BackType开发的一个分布式实时数据处理软件,可以简单.高效.可靠地处理大量的数据流.Twitter在2011年7月收购该公司,并于2011年9月底正式将Storm项 ...

  4. VMware vSphere 5.1 简介与安装

    虚拟化系列-VMware vSphere 5.1 简介与安装  标签: 虚拟化 esxi5.1 VMware vSphere 5.1 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 . ...

  5. Nutch搜索引擎(第2期)_ Solr简介及安装

    1.Solr简介 Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展并对查询性能进行了优化 ...

  6. Node.js的简介和安装

    一.Node.js的简介和安装 a)       什么是Node.js? Node.js是一个开发平台 让JavaScript运行在服务器端的开发平台 ---简单点说就是用JavaScript写服务器 ...

  7. Nutch之简介与安装

    初学Nutch之简介与安装 初学Nutch之简介与安装   1.Nutch简介 Nutch是一个由Java实 现的,开放源代码(open-source)的web搜索引擎.主要用于收集网页数据,然后对其 ...

  8. Nutch搜索引擎Solr简介及安装

    Nutch搜索引擎(第2期)_ Solr简介及安装   1.Solr简介 Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的 ...

  9. DNN简介以及安装

    开源框架DNN简介以及安装 donetnuke 是一款免费的开源cms框架,目前也有收费版,不过免费版也可以适应大家大部分的需求.我前些阵子是老板让我在20天内,做好一个官网并且发布,并且指定使用dn ...

随机推荐

  1. debian 9 安装后的配置,debian 9 开发环境。

    注意:以下命令用sudo或者以root用户进行 一.Xterm(在安装KDE桌面情况下)的配置(可以黏贴,复制): 首先在根目录下编辑文件.Xresources(没有可以创建) root@debian ...

  2. $attr和$listeners is readonly

    https://www.jb51.net/article/132371.htm 出现这个问题的原因,主要是因为在使用的时候出现了A组件调用B组件,B组件再调用了C组件.而直接使用了A组件修改C组件的数 ...

  3. python_函数传递列表

    '''#创建一个空列表,包含一些要打印的设计unprinted_designs = ['iphone','robot','books']completed_modles = [] #模拟打印每个设计, ...

  4. 2019-03-28 SQL Server Table

    -- table 是实际表 view是虚表.你可以认为view是一个查询的结果 -- 声明@tbBonds table declare @tbBonds table(TrustBondId int n ...

  5. 如何让Jboss的debug在myeclise上运行

    1.在windows下运行jboss的debug.bat 看见监听的端口 2.打开myeclipse 点击选择 ①你要配置的名字(随意) ②myeclipse中选中该项目 ③jboss的启动的ip地址 ...

  6. 实现双向数据绑定mvvm

    实现双向数据绑定mvvm  

  7. 2015 Multi-University Training Contest 1 hdu 5296 Annoying problem

    Annoying problem Time Limit: 16000/8000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others ...

  8. webserver的作用!

    常见的webserver:Apache和Nginx(linux平台) IIS(window平台) 非常多小公司小项目眼下不一定使用了webserver,由于流量下,单台应用server能够支撑. 实际 ...

  9. PHP的curl库代码使用

    欢迎訪问个人原创地址: http://www.phpthinking.com/archives/468 使用PHP的cURL库能够简单和有效地去抓网页. 你仅仅须要执行一个脚本.然后分析一下你所抓取的 ...

  10. JS 控制checkbox 获取 全选 全不选 一行不选择全选则不被选择 所有选择全选被选择

    //点击全选button的事件操作 function selectAll(){ var allcheckBoxs=document.getElementsByName("iTo") ...