LaTex学习笔记(一)

前言:

      由于要发表论文,需要对论文进行排版,一般大家都是用word进行编写,最近在知乎看到大家推荐使用Ctex中文套件来编排,于是就决定尝试一下这个强大的文字排版写作工具。在这个过程中,我根据自己的需求去学习所需要的部分,因此不会面面俱到,也不会很详细,这篇文章也旨在入门,想要系统的学习这个工具,可以去寻找相关的文档或者帮助文件学习。

       关于LaTex中文套件CTex的安装和介绍,这里就不啰嗦了,可以参考博文:点击打开链接

一、初次尝试 

1.1 英文文本

       LATEX  的源代码本质上是文本文件,专用于编辑  LATEX  源代码的编辑器( TeXstudio 、 WinEdt 等)提供了一些语法高亮、命令补全等功能,以及调用排版引擎的一些按钮。这两个编辑器我都下载了,最后还是感觉 TeXstudio 比较好用一点,因此,在这里我选择 TeXstudio 编辑器。    

      LATEX  源代码以一个  \documentclass 命令作为开头,它规定了文档使用的文档类:

\documentclass{...}

      紧接着我们可以用 \usepackage 命令调用宏包:

\usepackage{...}

     再接着,我们需要用以下一对命令来标记正文内容的开始位置和结束位置,而将正文内容写入 content 的位置:

\begin{document}
  content
\end{document}

     在 \documentclass 和 \begin{document} 之间的位置称为导言区,除了使用 \usepackage 调用宏包之外,一些对文档的全局设置命令也在这里使用。当然也可以什么都不写,一个宏包都不调用。一切视自己需求。

    接下来我们来实践看下效果,我们在 编辑器 TeXstudio 中输入以下内容:

\documentclass{article} 
\begin{document} 
	hello, world! 
\end{document} 

 然后选择F5快捷键编译(或者在菜单栏选择 Tools->Build & View),得到如下效果


注意,左边是LATEX源代码,右边是生成的PDF文件预览,我们打开文件目录,可以看到生成的PDF文件:


那么,如何理解编译源代码文件(.tex 文件)后生成的其他几个文件呢?我们简单介绍一下这些文件:

         .log 排版引擎生成的日志文件,供排查错误使用。

         .aux  LATEX  生成的主辅助文件,记录交叉引用、目录、参考文献的引用等。

但是,上面只是英文排版,如果需要编写中文论文,那该怎么办呢?


1.2  中文文本

     用 LATEX 排版中文的一大难题是中文字体的处理。xelatex 命令支持直接使用系统安装的 TrueType (.ttf) 、OpenType (.otf) 等格式的字体,加上对 UTF-8 编码的原生支持,免去了预处理字体的麻烦。在此基础上的 xeCJK 宏包更进一步完善了排版中文的一些细节,比如中英文之间插入空隙、中文行尾的回车不引入空格、标点符号不出现在行首,等等。

    xeCJK 宏包支持用简单的命令配置中文字体。如下所示:


当然,在编译之前,要在Options中设置一下,将默认的编译器更改为XeLaTeX,如下所示:


     ctex 宏包和文档类是对 CJK 和 xeCJK 等宏包的进一步封装。ctex 文档类包括 ctexart 、ctexrep ctexbook,是对  LATEX 的三个标准文档类的封装,对  LATEX 的排版样式做了许多调整,以切合中文排版风格。最新版本的 ctex 宏包文档类甚至支持自动配置字体。比如上述例子可进一步简化为:



二、分段和注释

  2.1 分段

        比如,现在我们有这么一段源代码,如下所示:

\documentclass{ctexart}
\begin{document} 
	你好,朋友!
	到目前为止,你已经可以用LaTeX自带的article模板来书写一篇基本的论文框架了,至少你已经能够借助搜索然后复制粘贴这些命令例子来开始用LaTeX编辑了。 
	在论文从框架到完整的过程中,必然还存在许多的细节问题,比如字体字号,比如图片拼合,比如复杂的表格等等。 
	那些问题,就请咨询google吧。通常来说我们作为初学者会提出的问题,早就已经有许多的先辈们在网络上提过同样的问题了,看看别人的回答就可以。 
	LaTeX在国内的普及率并不高,因此许多时候如果搜英文关键词,会获得更好的效果。
\end{document}

编译后的效果如下:


        我本来的想法是一句话作为一个自然段的,可是它就所有的文字放置在一个自然段了,显然不是我想要的效果。

        LATEX 源代码中,空格键和  Tab 键输入的空白字符视为“空格”。连续的若干个空白字符视为一个空格。一行开头的空格忽略不计。

        分段的方法有两种:

        (1)行末的回车视为一个空格,但连续两个回车,也就是空行,会将文字分段。多个空行被视为一个空行。

        (2)也可以在行末使用 \par 命令分段。

我使用这两种方法在新的源代码中,如下:

\documentclass{ctexart}
\begin{document} 
	你好,朋友!\par
	到目前为止,你已经可以用LaTeX自带的article模板来书写一篇基本的论文框架了,至少你已经能够借助搜索然后复制粘贴这些命令例子来开始用LaTeX编辑了。 
	
	在论文从框架到完整的过程中,必然还存在许多的细节问题,比如字体字号,比如图片拼合,比如复杂的表格等等。 
	
	
	那些问题,就请咨询google吧。通常来说我们作为初学者会提出的问题,早就已经有许多的先辈们在网络上提过同样的问题了,看看别人的回答就可以。
	 
	 
	 
	 
	LaTeX在国内的普及率并不高,因此许多时候如果搜英文关键词,会获得更好的效果。
\end{document}

重新编译,得到的效果为:


2.2 注释

        LATEX 用%字符作为注释,这个跟MatLab编程类似。在这个字符之后直到行末,所有的字符都被忽略,行末的回车也不引入空格。如下:

\documentclass{ctexart}
\begin{document} 
	你好,朋友!\par    % 这是注释部分,“%”符号后面的该行内容不会被编译。
	到目前为止,        % 你猜 到目前为止 这几个字后面跟的是什么?
	你已经可以用LaTeX自带的article模板来书写一篇基本的论文框架了,至少你已经能够借助搜索然后复制粘贴这些命令例子来开始用LaTeX编辑了。 
	
	在论文从框架到完整的过程中,必然还存在许多的细节问题,比如字体字号,比如图片拼合,比如复杂的表格等等。 
	
	
	那些问题,就请咨询google吧。通常来说我们作为初学者会提出的问题,早就已经有许多的先辈们在网络上提过同样的问题了,看看别人的回答就可以。
	 
	 
	 
	 
	LaTeX在国内的普及率并不高,因此许多时候如果搜英文关键词,会获得更好的效果。
\end{document}

编译后的结果是:


三、标题、作者和脚注

     一篇论文怎么少的了标题和作者呢?

     LATEX 支持生成简单的标题页。首先需要给定标题和作者等信息:

\title{⟨title⟩}
\author{⟨author⟩}
\date{⟨date⟩} 

      其中前两个命令是必须的(不用 \title 会报错;不用 \author 会警告),\date 命令可选(LATEX还提供了一个 \today 命令自动生成当前日期,\date 默认使用 \today)。

      在 \title、\author 等命令内可以使用 \thanks 命令生成标题页的脚注,用 \and 隔开多个人名,如:

\author{Mary\thanks{地址:****实验室}

\and Ted\thanks{第一作者}

\and Louis}

       在信息给定后,就可以使用\maketitle。

我们来看下面所示的源代码:

\documentclass{ctexart}
\title{LaTeX入门}
\author{小明\thanks{第一作者} 
	\and 小红\thanks{第二作者} 
	\and 隔壁老王\thanks{通讯作者}} 
\date{2018年7月7日}
 
\begin{document} 
	\maketitle 
	你好,朋友!
	
	到目前为止,你已经可以用LaTeX自带的article模板来书写一篇基本的论文框架了,至少你已经能够借助搜索然后复制粘贴这些命令例子来开始用LaTeX编辑了。 
	
	在论文从框架到完整的过程中,必然还存在许多的细节问题,比如字体字号,比如图片拼合,比如复杂的表格等等。 
	
	
	那些问题,就请咨询google吧。通常来说我们作为初学者会提出的问题,早就已经有许多的先辈们在网络上提过同样的问题了,看看别人的回答就可以。
	 
	 
	 
	 
	LaTeX在国内的普及率并不高,因此许多时候如果搜英文关键词,会获得更好的效果。
\end{document}

编译后的效果,如下:


四、章节和段落

     一篇结构化的、条理清晰文档一定是层次分明的,通过不同的命令分割为章、节、小节。LATEX的三个标准文档类 article、report 和 book提供了一系列命令,用以划分章节、生成章节标题并自动编号。

     article 文档类带编号的层级为 \section 、\subsection 、 \subsubsection 三级。

    我们看如下源代码:

\documentclass{ctexart}
\title{LaTeX入门}
\author{小明\thanks{第一作者} 
	\and 小红\thanks{第二作者} 
	\and 隔壁老王\thanks{通讯作者}} 
\date{2018年7月7日}
 
\begin{document} 
\maketitle 
\section{第一章 LaTex介绍}  LATEX是一个文档准备系统 (Document Preparing  System),它非常适用于生成高印刷质量的科技类和数学类文档。
\subsection{概述} TEX是高德纳 (Donald E.Knuth) 开发的、以排版文字和数学公式为目的的一个计算机软件。
                 高德纳从1977年开始开发TEX,以发掘当时开始用于出版工业的数字印刷设备的潜力。
                 \par 在开始示例编译过程之前,有必要澄清几个概念:\par
		 引擎:全称为排版引擎,是读入源代码并编译生成文档的程序。\par 
		 格式:是定义了一组命令的代码集。
\subsubsection{LaTex的优缺点} 专业的排版输出,产生的文档看上去就像“印刷品”一样。\par 
			     方便而强大的数学公式排版能力,无出其右。\par 绝大多数时候,用户只需专注于一些组织文档结构的基础命令,无需(或很少)操心文档的版面设计。\par  
			     很容易生成复杂的专业排版元素,如脚注、交叉引用、参考文献、目录等。
\subsection{安装}  在ctex.org下载ctex套装(203Mb或1.3Gb)(含MikTeX及WinEdt)。
\end{document}

编译后的效果如下所示:



注意:为什么在第二页的页眉处生成了“1 第一章 LATEX 介绍”  的字样呢?而且在第一章标题前生成了标号“1”, 如下所示:



      因为上述命令除了生成带编号的标题之外,还向目录中添加条目,并影响页眉页脚的内容(如上图所示)。每个命令有两种变体:

• 带可选参数的变体:\section[⟨short title⟩]{⟨title⟩}

标题使用 ⟨title⟩ 参数,在目录和页眉页脚中使用 ⟨short title⟩ 参数;

• 带星号的变体:\section*{⟨title⟩}

标题不带编号,也不生成目录项和页眉页脚。

     我们作了修改之后的源代码如下所示:

\documentclass{ctexart}
\title{LaTeX入门}
\author{小明\thanks{第一作者} 
	\and 小红\thanks{第二作者} 
	\and 隔壁老王\thanks{通讯作者}} 
\date{2018年7月7日}
 
\begin{document} 
\maketitle 
\section*{第一章 LaTex介绍}  LATEX是一个文档准备系统 (Document Preparing  System),它非常适用于生成高印刷质量的科技类和数学类文档。
\subsection*{1.1 概述} TEX是高德纳 (Donald E.Knuth) 开发的、以排版文字和数学公式为目的的一个计算机软件。
                 高德纳从1977年开始开发TEX,以发掘当时开始用于出版工业的数字印刷设备的潜力。
                 \par 在开始示例编译过程之前,有必要澄清几个概念:\par
				引擎:全称为排版引擎,是读入源代码并编译生成文档的程序。\par 
				格式:是定义了一组命令的代码集。
\subsubsection*{1.1.1 LaTex的优缺点} 专业的排版输出,产生的文档看上去就像“印刷品”一样。\par 
						方便而强大的数学公式排版能力,无出其右。\par 绝大多数时候,用户只需专注于一些组织文档结构的基础命令,无需(或很少)操心文档的版面设计。\par  
						很容易生成复杂的专业排版元素,如脚注、交叉引用、参考文献、目录等。
\subsection*{1.2 安装}  在ctex.org下载ctex套装(203Mb或1.3Gb)(含MikTeX及WinEdt)。
\end{document}

编译后生成的pdf文档效果为:













猜你喜欢

转载自blog.csdn.net/weixin_41695564/article/details/80970491