科研人快速入门LaTex到日常使用,下载安装配置,语法使用说明等

2023-05-16

1 前言

Latex是一款开源免费并且应用相当广泛的排版工具,被⼴泛运⽤在各个⾏业,⽐如学术界、出版界。LaTeX 和 Word 相比,LaTeX 入门者更能写出漂亮的文档。它不但能对文字、公式、图片进行精确而复杂的排版,并且还能保证全文各个章节格式的一致性。像大家平时看到的论文、书籍无一例外都是使用LaTex生成的。

LaTex同时提供相当数量的宏包,作为对基础排版功能的扩充。像乐谱、原理图,甚至简单的动画也都可以用它完成。如果你正在求职,使用LaTex来做一份专业的简历也可能会让你在众人之中脱颖而出。

本文整理了目前已知的搜罗到的各种相关入门介绍,消除对LaTex复杂难用的刻板印象,快速上门入手这款文字排版的必备神器。

了解更多:LaTex官网 https://www.latex-project.org/
在这里插入图片描述

2 LaTex介绍

LaTex的主要优势是它会将文档的内容和排版区分开来,这就好像是HTML和CSS的关系。另外如果你使用过Markdown这款编辑器的话,你会更清楚地了解到它也是一种将内容和排版分开的标记语言,比如本文就是用Markdown编写的。Markdown的语法非常轻量,非常适合于简单文字的创作,像很多WIKI,比如GitHub的文档、程序员的博客等大多数都是采用的Markdown语法生成的。

和Markdown类似,LaTex的格式和排版也可以随后轻易地替换,通常也就是一两行代码的事,例如你可以轻易的将一篇普通文档切换为科学期刊,甚至是幻灯片。当然每个工具都有适用的地方,LaTex也不能应用与所有的情况。如果只是记记笔记,不怎么需要大篇幅排版的情况下,使用Word这种所见即所得的工具自然也会方便很多。

如果你认为我上面说明还不是太清楚的话,那么推荐一份大名鼎鼎的文档《一份不太简短的LaTex介绍》,对想要迅速了解LaTex的人来说仍有些略长,但内容较为系统,相对简短,仍具有很大的指导意义。
在这里插入图片描述
网站地址:https://ctan.org/tex-archive/info/lshort/chinese
进去之后点击下载中文文档即可。
在这里插入图片描述

我这里也提供了一个镜像地址(随版本更新),可以直接下载:一份不太简短的LaTex介绍http://mirrors.cqu.edu.cn/CTAN/info/lshort/chinese/lshort-zh-cn.pdf

3 下载安装

常用的Tex发行版一般有两个:Tex LiveMikTex
Tex Live 提供的包很全,但占用空间大,4点多个G。MikTex占用空间小,安装速度快,但如果遇到本地缺少的包则需要联网下载,大家可以根据自己的实际情况考虑。如果你的网络连接不太稳定,则可以选择下载TexLive,一劳永逸。

3.1 TexLive下载

TexLive官网地址:https://tug.org/texlive/

官网下载太慢,可以使用国内镜像来加速下载

  • 清华大学开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/
  • 北京外国语大学开源镜像站:https://mirrors.bfsu.edu.cn/CTAN/systems/texlive/Images/
  • 南方科技大学开源镜像站:https://mirrors.sustech.edu.cn/CTAN/systems/texlive/Images/
    在这里插入图片描述

可以在以上网址中下载TexLive离线安装包,不过TexLive的安装速度有点慢,需要耐心等待。

3.2 安装教程

可参考:TexLive 安装步骤 2022版

3.3 在线使用版

当然,还有另一种方式,如果不希望配置本地环境,只是想快速尝试的话,也可以使用Overleaf,官网地址:https://www.overleaf.com/,这款可以免费在线使用的Tex编辑器。

4 LaTeX编辑器

关于 LaTeX 的编辑器有很多:Texworks、TeXstudio、WinEdt、Sublime Text 3、VS Code、Vim、Emacs 等。

  • Texworks 是 TeX Live 自带的编辑器,对英文支持比较好。
  • Sublime Text 3是个人特别喜欢的高级编辑器,用它来写代码非常炫酷,也可以配置 LaTeX 环境。高级编辑器的查找功能特别好用。
  • VS Code被称为「宇宙第一编辑器」的 VS Code (Visual Stuido Code) 当然也可以作为 LaTeX 的编辑器。
  • WinEdt 是 Windows 平台上一款功能强大,界面简洁的 LaTeX 编辑器。WinEdt 10 (最新的版本是 WinEdt 10.3) 相比老版本界面更加简洁,而且支持高分屏,更加好用。
  • TeXstudio是很多网友推荐的编辑器,它也非常好用。对于刚入门的 LaTeX 学习者,推荐使用 WinEdt 或 TeXstudio,因为它们属于专业的 IDE,也就是专门为 LaTeX 开发的软件。

4.1 下载TeXstudio

TeXstudio优于TeXlive自带的TeXwork editor编辑器,大概可以理解为Java的各种编译器
官网下载地址:http://texstudio.sourceforge.net/
官网下载太慢了。。。

其他地址:

  • 阿里云盘:
    链接:https://www.aliyundrive.com/s/x1sitTcbNtH
    提取码:DFwd

  • 百度网盘
    链接:https://pan.baidu.com/s/1du7_V5vaWqKXxIV4VcEe8w

  • 我的云盘:https://yun.macw.cc/s/4xfmjg

4.2 安装程序

傻瓜式安装,只需要注意一下安装路径。
可以选择更改安装路径,也可以选择默认直接下一步。
在这里插入图片描述

4.3 配置程序

  • 1)将软件设置为中文,打开软件,点击顶部的Options,然后选择Configure TexStudio…
    再选择General,设置为中文

在这里插入图片描述

  • 2)选择XeLaTeX为编译命令

XeLaTeX命令可以编译中文,如果为PdfLaTeX编译中文会报错的。
在这里插入图片描述

  • 3)查看命令

正常的情况就是安装之后就会自动扫描出来各种命令自动添加,如果显示的不是这样的,那就是安装LaTeX的时候出现了错误(环境变量没有配置好)。这一点的解决方法请搜索 LaTeX环境变量的配置
在这里插入图片描述

  • 4)测试

Ctrl+N新建一个文件,输入以下代码,来一个最简单的示例:
LaTex中所有的命令都以\开头,后面可以跟一个花括号{},代表这个命令的参数。\命令名{}

\documentclass{article}
\begin{document}
``Hello world!'' from \LaTeX.
\end{document}

这是一个最基础的示例,也就是一个Tex文档最少要包含documentclass,begin和end三条命令语句,接下来演示一个完整一点的,后面再说怎么用

% 导言区
\documentclass{article} 

% 导入中文宏
\usepackage{ctex}

% 构建命令,取别名,使用degree 代替 ^ circ
\newcommand\degree{^\circ}

\title{\heiti 勾股定理}

\author{\kaishu 刘一根}
\date{\today} 

% 正文区
\begin{document}
\maketitle
	
	勾股定理可以用现代的语言描述如下:
	
	直角三角形斜边的平方等于两腰的平法和。
	
	可以用符号语言描述为:设直角三角形 
	$\angle C=90\degree $则有:
	$$ 
	AB^2 = BC^2 + AC^2 
	$$
	这就是勾股定理
\end{document}

点击构建并查看或快捷键F5来查看。
在这里插入图片描述

参考文章:https://blog.csdn.net/weixin_45832959/article/details/123093209

5 利用LaTeX编写文档

5.1 文档类型

TeX有多种文档类型可选,较常用的有如下几种类型:

  • 对于英文,可以用bookarticlebeamer
  • 对于中文,可以用ctexbookctexartctexbeamer,这些类型自带了对中文的支持。

不同的文件类型,编写的过程中也会有一定的差异,如果直接修改文件类型的话,甚至会报错。

  • article:文章格式的文档类,广泛用于科技论文、报告、说明文档等。对应中文的ctexart
  • book:书籍文档类,包含章节结构和前言、正文、后记等结构。对应中文的ctexbook
  • beamer:幻灯片类,可以创建外观很棒的演示文稿,具有海量的模板可以用。对应中文的ctexbeamer
  • report:长篇报告格式的文档类,具有章节结构,用于综述、长篇论文、简单的书籍等。

以下统一选用ctexart。在编辑框第一行,输入如下内容来设置文件类型:

\documentclass[⟨options⟩]{⟨class-name⟩}

例如

\documentclass{ctexart}

所有位于\begin{document}之前的内容都称作是前言(preamble),他就像是HTML中的head标签,可以在这里设置文档的格式,页面的尺寸,也可以指定文档中需要导入的宏包等等
另外,一般也可以在\documentclass处设置基本参数,可选参数 ⟨options⟩ 为文档类指定选项,以全局的规定一些排版的参数,如字号、纸张大小、单双面等等。比如调用 article 文档类排版文章,指定纸张为 A4 大小,基本字号为 11pt,双面排版。
笔者通常设置默认字体大小为12pt,纸张大小为A4,单面打印。需要将第一行的内容替换为:

\documentclass[12pt, a4paper, oneside]{ctexart}

文件的正文部分需要放入document环境中,在document环境外的部分不会出现在文件中。

\documentclass[12pt, a4paper, oneside]{ctexart}
\begin{document}
这里是正文. 
\end{document}

5.2 宏包

在使用 LATEX 时,常常需要依赖一些扩展来增强或补充 LATEX 的功能,比如排版复杂的表格、插入图片、增加颜色甚至超链接等等。这些扩展称为宏包。调用宏包的方法非常类似调用文档类的方法:

\usepackage[⟨options⟩]{⟨package-name⟩}

通常与数学公式与定理环境相关的宏包为amsmath、amsthm、amssymb,用于插入图片的宏包为graphicx,代码如下:

\usepackage{amsmath, amsthm, amssymb, graphicx}

另外,在加载宏包时还可以设置基本参数,如使用超链接宏包hyperref,可以设置引用的颜色为黑色等,代码如下:

\usepackage[bookmarks=true, colorlinks, citecolor=blue, linkcolor=black]{hyperref}

5.3 文件格式

除了源代码文件 .tex 以外,我们在使用 LATEX 时还可能接触到各种格式的文件。本节简单介绍一下在使用 LATEX 时能够经常见到的文件。
每个宏包和文档类都是带特定扩展名的文件,除此之外也有一些文件出现于 LATEX 模板中:

  • .sty 宏包文件。宏包的名称与文件名一致。
  • .cls 文档类文件。文档类名称与文件名一致。
  • .bib BibTeX 参考文献数据库文件。
  • .bst BibTeX 用到的参考文献格式模板。

LTEX 在编译过程中除了生成 .dvi 或 .pdf 格式的文档外9,还可能会生成相当多的辅助文件和日志。一些功能如交叉引用、参考文献、目录、索引等,需要先通过编译生成辅助文件,然后再次编译时读入辅助文件得到正确的结果,所以复杂的 LATEX 源代码可能要编译多次:

  • .log 排版引擎生成的日志文件,供排查错误使用。
  • .aux LATEX 生成的主辅助文件,记录交叉引用、目录、参考文献的引用等。
  • .toc LATEX 生成的目录记录文件。
  • .lof LATEX 生成的图片目录记录文件。
  • .lot LATEX 生成的表格目录记录文件。
  • .bbl BIBTEX 生成的参考文献记录文件。
  • .blg BIBTEX 生成的日志文件。
  • .idx LATEX 生成的供 makeindex 处理的索引记录文件。
  • .ind makeindex 处理 .idx 生成的用于排版的格式化索引文件。
  • .ilg makeindex 生成的日志文件。
  • .out hyperref 宏包生成的 PDF 书签记录文件。

5.4 标题

标题可以用\title{}设置,作者可以用\author设置,日期可以用\date{}设置,这些都需要放在导言区。为了在文档中显示标题信息,需要使用\maketitle。例如:

\documentclass[12pt, a4paper, oneside]{ctexart}
\usepackage{amsmath, amsthm, amssymb, graphicx}
\usepackage[bookmarks=true, colorlinks, citecolor=blue, linkcolor=black]{hyperref}

% 导言区

\title{我的第一个\LaTeX 文档}
\author{Macw}
\date{\today}

\begin{document}

\maketitle

这里是正文. 

\end{document}

5.5 正文

正文可以直接在document环境中书写,没有必要加入空格来缩进,因为文档默认会进行首行缩进。相邻的两行在编译时仍然会视为同一段。在LaTeX中,另起一段的方式是使用一行相隔,例如:

我是第一段. 

我是第二段.

这样编译出来就是两个段落。在正文部分,多余的空格、回车等等都会被自动忽略,这保证了全文排版不会突然多出一行或者多出一个空格。另外,另起一页的方式是:

\newpage

在编写文档时,为了保证美观,通常将中文标点符号替换为英文标点符号(需要注意的是英文标点符号后面还有一个空格),这比较适合数学类型的文档。

在正文中,还可以设置局部的特殊字体:

字体命令
直立\textup{文本内容}
斜体\textit{}
倾斜\textsl{}
小型大写\textsc{}
加宽加粗\textbf{}
下划线\underline{}

如果我们要在文章中添加一个新的段落,我们可以通过输入两个换行符来完成,需要注意的是单独的一个换行符只会生成一个空格,并不会开启一个新的段落。

5.6 章节

对于ctexart文件类型,章节可以用\section{}\subsection{}命令来标记,例如:

\documentclass[12pt, a4paper, oneside]{ctexart}
\usepackage{amsmath, amsthm, amssymb, graphicx}
\usepackage[bookmarks=true, colorlinks, citecolor=blue, linkcolor=black]{hyperref}

% 导言区

\title{我的第一个\LaTeX 文档}
\author{Macw}
\date{\today}

\begin{document}

\maketitle
% 一级章节
\section{一级标题}
% 二级章节
\subsection{二级标题}

这里是正文. 

\subsection{二级标题}
% 三级章节
\subsubsection{三级标题}
这里是正文. 

\end{document}

5.7目录

在有了章节的结构之后,使用\tableofcontents命令就可以在指定位置生成目录。通常带有目录的文件需要编译两次,因为需要先在目录中生成.toc文件,再据此生成目录。

\documentclass[12pt, a4paper, oneside]{ctexart}
\usepackage{amsmath, amsthm, amssymb, graphicx}
\usepackage[bookmarks=true, colorlinks, citecolor=blue, linkcolor=black]{hyperref}

% 导言区

\title{我的第一个\LaTeX 文档}
\author{Macw}
\date{\today}

\begin{document}

\maketitle

\tableofcontents

\section{一级标题}

\subsection{二级标题}

这里是正文. 

\subsection{二级标题}

这里是正文. 

\end{document}

5.8 图片

插入图片需要使用graphicx宏包,建议使用如下方式:

\begin{figure}[htbp]
    \centering
    \includegraphics[width=8cm]{图片.jpg}
    \caption{图片标题}
\end{figure}

其中,[htbp]的作用是自动选择插入图片的最优位置,\centering设置让图片居中,[width=8cm]设置了图片的宽度为8cm,\caption{}用于设置图片的标题。

5.9 表格

LaTeX中表格的插入较为麻烦,可以直接使用Create LaTeX tables online – TablesGenerator.com:https://www.tablesgenerator.com/来生成。建议使用如下方式:

\begin{table}[htbp]
    \centering
    \caption{表格标题}
    \begin{tabular}{ccc}
        1 & 2 & 3 \\
        4 & 5 & 6 \\
        7 & 8 & 9
    \end{tabular}
\end{table}

5.10 列表

LaTeX中的列表环境包含无序列表itemize、有序列表enumerate和描述description,以enumerate为例,用法如下:

\begin{enumerate}
    \item 这是第一点; 
    \item 这是第二点;
    \item 这是第三点. 
\end{enumerate}

另外,也可以自定义\item的样式:

\begin{enumerate}
    \item[(1)] 这是第一点; 
    \item[(2)] 这是第二点;
    \item[(3)] 这是第三点. 
\end{enumerate}

5.11 定理环境

定理环境需要使用amsthm宏包,首先在导言区加入:

\newtheorem{theorem}{定理}[section]

其中{theorem}是环境的名称,{定理}设置了该环境显示的名称是“定理”,[section]的作用是让theorem环境在每个section中单独编号。在正文中,用如下方式来加入一条定理:

\begin{theorem}[定理名称]
    这里是定理的内容. 
\end{theorem}

其中[定理名称]不是必须的。另外,我们还可以建立新的环境,如果要让新的环境和theorem环境一起计数的话,可以用如下方式:

\newtheorem{theorem}{定理}[section]
\newtheorem{definition}[theorem]{定义}
\newtheorem{lemma}[theorem]{引理}
\newtheorem{corollary}[theorem]{推论}
\newtheorem{example}[theorem]{}
\newtheorem{proposition}[theorem]{命题}

另外,定理的证明可以直接用proof环境。

5.12 页面

最开始选择文件类型时,我们设置的页面大小是a4paper,除此之外,我们也可以修改页面大小为b5paper等等。

一般情况下,LaTeX默认的页边距很大,为了让每一页显示的内容更多一些,我们可以使用geometry宏包,并在导言区加入以下代码:

\usepackage{geometry}
\geometry{left=2.54cm, right=2.54cm, top=3.18cm, bottom=3.18cm}

另外,为了设置行间距,可以使用如下代码:

\linespread{1.5}

5.13页码

默认的页码编码方式是阿拉伯数字,用户也可以自己设置为小写罗马数字:

\pagenumbering{roman}

另外,aiph表示小写字母,Aiph表示大写字母,Roman表示大写罗马数字,arabic表示默认的阿拉伯数字。如果要设置页码的话,可以用如下代码来设置页码从0开始:

\setcounter{page}{0}

5.14 上下标

上标可以用^输入,例如a^n,效果为a^n 。

下标可以用_来输入,例如a_ 。

上下标只会读取第一个字符,如果上下标的内容较多的话,需要改成^{}_{}

6 总结

这个教程比较简短,涉及到的东西也比较少,耐心学习完后,应该能满足日常使用的需求。

另外本文中没有提及的其他语法说明,请下载第2节中的PDF文件参阅详细说明,本文第5节语法说明部分也是参考该文档而来。

本文中还没有提及的研究如何美化排版,或是使用网络上的精美模板,让排版的效果更好。
以及导入期刊给定的Tex模板等内容,由于篇幅太长本文就不再总结,后续再新写一篇文章总结下如何下载期刊模板,如何导入TexStudio等内容,敬请关注。。。。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

科研人快速入门LaTex到日常使用,下载安装配置,语法使用说明等 的相关文章

  • 51单片机100倒计时

    目标 xff1a 基于51单片机的定时器在数码管上显示100s倒计时 xff0c 计时结束后led灯全亮 上面是我的开发版的原理图 xff0c 晶振是11 0592MHZ 找不到STC89C5xRC h的可以用AT89 xff0c 把头文件
  • Linux下的crontab定时执行任务命令详解

    在LINUX中 xff0c 周期执行的任务一般由cron这个守护进程来处理 ps ef grep cron cron读取一个或多个配置文件 xff0c 这些配置文件中包含了命令行及其调用时间 cron的配置文件称为 crontab xff0
  • golang密码加密解密

    简介 最近正在迁移自己的小项目 xff0c 项目之前是基于Laravel5 5开发的 整个用户登陆也是基于框架的 Auth 包认证的 其中用户密码这块也是用到了PHP内置的函数password hash xff0c 用它进行密码加密 而且
  • Android9.0 iptables用Netd实现删除子链功能的实现

    1 前言 在9 0的系统rom定制化开发中 在system中netd网络这块的产品需要中 会要求设置屏蔽ip地址之内的功能 liunx中iptables命令也是比较重要的 接下来就来在INetd这块实现删除创建子链的相关功能 2 nbsp
  • golang错误处理

    Go语言主要的设计准则是 xff1a 简洁 明白 xff0c 简洁是指语法和C类似 xff0c 相当的简单 xff0c 明白是指任何语句都是很明显的 xff0c 不含有任何隐含的东西 xff0c 在错误处理方案的设计中也贯彻了这一思想 我们
  • golang使用gdb

    GDB调试简介 GDB是FSF 自由软件基金会 发布的一个强大的类UNIX系统下的程序调试工具 使用GDB可以做如下事情 xff1a 启动程序 xff0c 可以按照开发者的自定义要求运行程序 可让被调试的程序在开发者设定的调置的断点处停住
  • Go怎么写测试用例

    如何编写测试用例 由于go test命令只能在一个相应的目录下执行所有文件 xff0c 所以我们接下来新建一个项目目录gotest 这样我们所有的代码和测试代码都在这个目录下 接下来我们在该目录下面创建两个文件 xff1a gotest g
  • golang应用日志

    seelog介绍 seelog是用Go语言实现的一个日志系统 xff0c 它提供了一些简单的函数来实现复杂的日志分配 过滤和格式化 主要有如下特性 xff1a XML的动态配置 xff0c 可以不用重新编译程序而动态的加载配置信息 支持热更
  • golang网站错误处理

    我们的Web应用一旦上线之后 xff0c 那么各种错误出现的概率都有 xff0c Web应用日常运行中可能出现多种错误 xff0c 具体如下所示 xff1a 数据库错误 xff1a 指与访问数据库服务器或数据相关的错误 例如 xff0c 以
  • golang应用部署

    程序开发完毕之后 xff0c 我们现在要部署Web应用程序了 xff0c 但是我们如何来部署这些应用程序呢 xff1f 因为Go程序编译之后是一个可执行文件 xff0c 编写过C程序的读者一定知道采用daemon就可以完美的实现程序后台持续
  • golang备份和恢复

    我们经常会遇到生产服务器的网络断了 硬盘坏了 操作系统崩溃 或者数据库不可用了等各种异常情况 xff0c 所以维护人员需要对生产服务器上的应用和数据做好异地灾备 xff0c 冷备热备的准备 在接下来的介绍中 xff0c 讲解了如何备份应用
  • golang自定义路由器设计

    HTTP路由组件负责将HTTP请求交到对应的函数处理 或者是一个struct的方法 xff0c 如前面小节所描述的结构图 xff0c 路由在框架中相当于一个事件处理器 xff0c 而这个事件包括 xff1a 用户请求的路径 path 例如
  • golang中的Session支持

    session集成 beego中主要有以下的全局变量来控制session处理 xff1a related to session SessionOn bool 是否开启session模块 xff0c 默认不开启 SessionProvider
  • golang表单及验证支持

    在Web开发中对于这样的一个流程可能很眼熟 xff1a 打开一个网页显示出表单 用户填写并提交了表单 如果用户提交了一些无效的信息 xff0c 或者可能漏掉了一个必填项 xff0c 表单将会连同用户的数据和错误问题的描述信息返回 用户再次填
  • sublime搭建C/C++编译环境

    代码一 xff1a 34 cmd 34 34 g 43 43 34 34 file 34 34 std 61 c 43 43 11 34 34 o 34 34 file path file base name 34 34 amp 34 34
  • golang用户认证

    在开发Web应用过程中 xff0c 用户认证是开发者经常遇到的问题 xff0c 用户登录 注册 登出等操作 xff0c 而一般认证也分为三个方面的认证 HTTP Basic和 HTTP Digest认证第三方集成认证 xff1a QQ 微博
  • golang多语言支持

    专注后台开发相关技术 xff0c 广度深度并存 xff0c 干货情怀同在 微信搜索 盼盼编程 关注这个不一样的程序员 强烈推荐人工智能学习网站 beego中设置全局变量如下 xff1a Translation i18n IL Lang st
  • golang中的pprof支持

    专注后台开发相关技术 xff0c 广度深度并存 xff0c 干货情怀同在 微信搜索 盼盼编程 关注这个不一样的程序员 强烈推荐人工智能学习网站 Go语言有一个非常棒的设计就是标准库里面带有代码的性能监控工具 xff0c 在两个地方有包 xf
  • 大厂动态规划面试汇总,提升内功

    注 xff1a 本文是BAT真题收录很值得大家花心思看完 xff0c 看完会有收获 前言 算法是面试大公司必考的项目 xff0c 所以面试前准备好算法至关重要 xff0c 今天整理的常见的动态规划题目 xff0c 希望可以帮到大家 要想学习
  • 进程知识点,只需这一篇

    前言 你的进程 xff0c 为啥挂了 xff1f 进程挂了 xff0c 这个问题大家并不陌生 学完这篇 xff0c 你会对进程有一定了解 后面碰到进程挂的情况 xff0c 你很快能找到对应解决思路 进程在操作系统中 xff0c 是一个很重要

随机推荐