LaTex学习

LaTex文章总览:

导言区 (Preamble)

导言区是在 \documentclass 命令和 \begin{document} 命令之间的部分。它通常用于设置文档的全局参数,如文档类别 (\documentclass{})、加载宏包 (\usepackage{})、定义命令和环境、设置页面布局、指定文档的标题、作者等信息。导言区中的内容对整个文档都起作用,它们定义了文档的基本结构和格式。

1.文档类别:

复制代码
\documentclass{article}
%用于普通的学术文章、报告、短文等
\documentclass{report}
%适合长一些的报告、大论文,通常包含章节和章节层级。
\documentclass{book}
%用于书籍、书稿,支持更复杂的结构,如章节、目录、前言、附录等
\documentclass{proc}
%用于会议论文集或学术会议记录。

不同文章类别的作用,详细解释如下(建议大致看一下就好)

复制代码
​不同的文档类别 (\documentclass{}) 在 LaTeX 中会影响到正文的结构和排版方式,具体影响如下:

article 文档类:
  适合撰写简短的学术文章、报告、短文等。常见的特点是不分章节,直接从标题开始,仅包含部分的节 (\section{}) 和子节 (\subsection{}) 级别的标题。不会有章 (\chapter{}) 这一级别的结构。

report 文档类:
  适合撰写较长的报告、学位论文等。这个文档类支持章节结构,即可以使用 \chapter{}、\section{}、\subsection{} 等命令来组织文档。每个章节有单独的页眉和页脚,章节标题会自动编号,通常包含目录、参考文献和可能的附录等部分。

book 文档类:
  适合撰写书籍或更复杂的文档。与 report 类似,但提供了更多的功能和更复杂的章节结构。书籍类文档支持更深层次的章节划分,例如可以有 \part{}、\chapter{}、\section{}、\subsection{} 等,每个部分有独立的页眉和页脚,同时会生成更详细的目录和索引。

proc 文档类:
  用于会议论文集或学术会议记录。这个文档类通常与会议论文的特定格式要求相匹配,可能包含特定的标题样式、作者信息格式、页眉页脚设置等,以符合会议出版的要求。
每种文档类别的选择会影响到文档的整体结构、章节层级、页面布局、标题样式、页眉页脚的设置等方面。因此,在选择文档类别时,应根据文档的具体需求来决定,以确保最终输出的文档符合预期的结构和格式要求。

​

2.宏包

宏包:用于扩展 LaTeX 文档功能的集合

语法:

复制代码
\usepackage[option]{package}
%option是可选参数。
%package是加载的宏名。

有时候把[]省略是由于大多数宏包在加载时都有一组默认选项,如果不需要修改这些选项,可以直接省略 [options] 部分

复制代码
\usepackage{package}

常见的宏包

1.geometry宏包

复制代码
\usepackage[a4paper,left=10mm,right=10mm,top=15mm,bottom=15mm]{geometry}
%宏包 geometry 允许调整页面布局参数,例如页面尺寸和边距
  • a4paper:指定页面尺寸为 A4 纸大小。
  • left=10mm:左边距为 10mm。
  • right=10mm:右边距为 10mm。
  • top=15mm:上边距为 15mm。
  • bottom=15mm:下边距为 15mm。

2.amsmath宏包

复制代码
\usepackage{amsmath}
% amsmath 宏包扩展了 LaTeX 的数学排版功能,提供了许多增强数学公式和环境的命令。通常在 LaTeX 文档中,数学公式的编写离不开这个宏包。

3.comment 宏包

复制代码
\usepackage{comment}
%使用多行注释语法时候需要用到comment宏包


例如:
\usepackage{comment}
...
\begin{comment}
这里是需要注释的多行内容。
可以包括任意的 LaTeX 代码,这些内容将被完整地注释掉。
\end{comment}

4.hyperref宏包

复制代码
\usepackage{hyperref}
\hypersetup{
    colorlinks=true,        % 使用彩色链接
    linkcolor=blue,         % 内部链接的颜色
    urlcolor=blue,          % URL 的颜色
    citecolor=blue          % 引用的颜色
}

5.ctex宏包

复制代码
\usepackage[UTF8]{ctex}
%一个用于处理中文文档的宏包

3.文章标题

复制代码
\title{Cryptography}
%文章标题为Cryptography

4.文章作者

复制代码
\author{Killer}
%文章作者为killer

5.文章时间

复制代码
\date{\today}
%表示文章的时间是今天
%\today 是 LaTeX 的内置命令,会自动显示当前的日期,格式为默认的本地日期格式(通常为年-月-日)

如果需要设置具体的日期而非当前日期,可以手动输入日期,例如 \date{2024-07-06}。

正文区 (Main Document)

正文区从 \begin{document} 开始到 \end{document} 结束。这部分包含了文档的实际内容,如段落、章节、列表、数学公式、表格、插图等。正文区是文档的核心部分,其中的内容决定了最终输出的文档内容。

复制代码
\begin{document}
    这里面被包裹的部分都是正文区的内容

\end{document}

1.目录:

复制代码
\renewcommand{\contentsname}{目录}
%用于设置目录的标题内容
%处于导言区

\renewcommand 是 LaTeX 中用于重新定义命令的命令。
\contentsname 是 LaTeX 默认用于生成目录标题的命令。通过使用 \renewcommand,我们将它的输出从默认的 "Contents" 修改为 "目录"。这样,在生成文档目录时,目录标题将显示为 "目录" 而不是默认的 "Contents"。

复制代码
\tableofcontents
%用于定位目录生成的位置

当我们在latex正文区里面使用\tableofcontents命令时,会经历以下过程:

  1. 收集信息: 遍历整个文档,收集所有的章节标题(\section)、子标题(\subsection)和它们对应的页码等信息。

  2. 生成目录: 根据收集到的信息,会在这个命令出现的地方,生成一个结构化的目录,列出文档中的各个章节和子章节,每个条目通常包括章节标题和页码

2.大标题生成

生成标题使用\maketitle命令

复制代码
\begin{document}
    \maketitle
%通常\maketitle紧跟在\begin{document}之后
\end{document}

%标题通常包括文档的标题、作者和日期等信息。\maketitle 命令会根据在文档中设置的标题信息,自动排版并
%生成标题部分。

一般而言,在 LaTeX 文档中使用 \maketitle 前需要通过一些命令设置文档的标题信息,比如:

  • \title{}:设置文档的标题。
  • \author{}:设置文档的作者。
  • \date{}:设置文档的日期
    用法类似目录

3.摘要

复制代码
\begin{abstract}
		this is the abstract of the article,and I will introduce to you the basic thing of         
    the article to you. You can briefly read this part to have a totally view of this paper.
\end{abstract}

4.换行换段换页

换行

1.\\ :换行,一般在一行的最后写。
2.\\[offset] :换行,并且与下一行的行间距为原来行间距+offset,offset单位一般是empt

注:

em 是一个相对长度单位,等于当前字体的字母 'M' 的宽度;p 是一个绝对长度单位,等于点(即 1/72.271/72.27 英寸)

换段

1.代码与代码之间空一行即可进行换段。

2.也可以使用代码\par进行换段,应该在段落末尾使用。

换页

使用\newpage进行换页,在一页的最后写。

5.标题设置

复制代码
\section{这是一个一级标题}
\subsection{这是一个二级标题}
\subsubsection{这是一个三级标题}

6.注释

单行注释:

复制代码
%后面跟的内容默认都是注释

多行注释:

复制代码
\begin{comment}
	This is Multi-line comments.
    这是一个多行注释
\end{comment}
%前提需要引入\usepackage{comment}

7.脚注:

复制代码
\footnote[]{}

\]里面表示标注的符号,一般直接忽略,默认情况下使用阿拉伯数字。 {}表示标注的内容。 Cristiano Ronaldo dos Santos Aveiro\footnote{a famous football player} 效果图: ![](https://i-blog.csdnimg.cn/direct/3dd7a48df24a414d81748e82709fe62d.png) #### 8.引用 \begin{quote} 里面的内容通常被称为引用体 {\sffamily Your love makes me strong,} your hate makes me unstoppable. %{}通常用于限定一些命令的作用范围。例如上,前半部分是\sffamilly格式,后面则是默认格式 \end{quote} #### 9.文本内容设置 1.字体形式: 语法为:{\设置字体的形式 内容} 设置字体的形式: 常见中文有: {\songti 宋体} {\heiti 黑体} {\fangsong 仿宋} {\kaishu 楷书} 英文有: {\rmfamily Times New Roman 是一种经典的衬线字体,适合于正式的文档和印刷品。} {\sffamily Arial 是一种无衬线字体,清晰易读,常用于数字显示和屏幕阅读。} {\ttfamily Courier New 是一种等宽字体,用于编程或排版需要对齐的文本。} 2.字体大小: 从小到大顺序依次为: {\tiny 超级小} {\scriptsize 很小} {\footnotesize 较小} {\small 小} {\normalsize 中} {\large 大} 3.字体颜色: 需要导入宏包`\usepackage{xcolor}` 用法一: \textcolor{red}{这是红色的文本。} 用法二: \definecolor{mycolor}{rgb}{0.2, 0.6, 0.9} % 自定义一个名为 mycolor 的颜色,RGB 值为 (0.2, 0.6, 0.9) 写在导言区 \textcolor{mycolor}{这是自定义颜色的文本。} 在正文区可以使用 #### 10.链接与超链接 1.链接: 需要宏包: \usepackage{url} 在文档正文区的任何位置,使用 `\url{}` 命令来插入链接。 \url{http://www.baidu.com} 2.超链接: 需要宏包: \usepackage{hyperref} 在文档正文区中使用 `\href{URL}{文本}` 来创建超链接,其中 `URL` 是你要链接到的网址,`文本` 是你希望显示的内容。 \href{http://www.baidu.com}{点击这里访问百度} #### 11.图片 需要宏包: \usepackage{graphicx} 插入图片: \begin{figure}[htbp] \centering \includegraphics[width=0.6\linewidth]{example-image} \caption{这是示例图片} \label{fig:example} \end{figure} 解释: 1. \begin{figure} 和 \end{figure} 之间的内容用来创建一个浮动体(floating element),即可以自动在页面上选择合适的位置放置图片、表格等内容。 [htbp] 是放置选项,指定了图片可以放置的位置优先级,依次是 here(当前位置)、top(页面顶部)、bottom(页面底部)、page(单独一页)。LaTeX 会根据文档整体布局自动选择最佳位置。 2. \centering 命令将后续内容居中放置。在 figure 环境中,这将图片和标题都居中显示。 3. \includegraphics[<选项>]{<图片文件路径>} % \includegraphics 所处的位置表示要插入图片的位置 %<选项> 是可选的,用于设置图片的大小、旋转角度等参数。 %<图片文件路径> 是图片文件在计算机中的路径。 使用 width=\<长度\> 或 height=\<长度\> 可以指定图片的宽度或高度,长度可以是绝对尺寸(如 5cm)或相对尺寸(如 0.5\\textwidth 表示文本宽度的一半)。 4. \caption{} 命令用于给图片添加标题。 {这是示例图片}:是图片的标题文本内容。标题会显示在图片的下方,并且可以自动编号(依赖于文档类的设置)。 5. \label{} 命令用于为图片添加标签,以便在文中引用这张图片。 {fig:example}:是图片的标签名称。可以使用 \ref{fig:example} 在文中引用该图片的编号。 例如:如图 \ref{fig:example} 所示,这是一个示例图片。 当编译文档时,LaTeX会将\ref{fig:example}替换为对应图片的编号,例如"1",从而显示为:"如图 1 所示,这是一个示例图片。" #### 12.表格 推荐使用:[在线生成LaTeX表格![icon-default.png?t=N7T8](https://csdnimg.cn/release/blog_editor_html/release2.3.6/ckeditor/plugins/CsdnLink/icons/icon-default.png)https://www.tablesgenerator.com/](https://www.tablesgenerator.com/ "在线生成LaTeX表格")可以从Excel里面粘贴或导入,可以实现单元格合并,而且会在合并行或合并列的时候提醒要引入对应的宏包。 #### 13.数学(math): 需要宏: \usepackage{amsmath} 推荐: [常用数学符号的LaTeX表示方法![icon-default.png?t=N7T8](https://csdnimg.cn/release/blog_editor_html/release2.3.6/ckeditor/plugins/CsdnLink/icons/icon-default.png)https://blog.csdn.net/lilongsy/article/details/79378620](https://blog.csdn.net/lilongsy/article/details/79378620 "常用数学符号的LaTeX表示方法") 或者使用在线网站进行公式编辑: [在线LaTeX公式编辑器-编辑器 (latexlive.com)![icon-default.png?t=N7T8](https://csdnimg.cn/release/blog_editor_html/release2.3.6/ckeditor/plugins/CsdnLink/icons/icon-default.png)https://www.latexlive.com/](https://www.latexlive.com/ "在线LaTeX公式编辑器-编辑器 (latexlive.com)") #### 14.代码块: 需要宏: \usepackage{listings} 正文区域(python为例): \begin{lstlisting}[language=Python] def fun(): print("Hello, world!") fun() \end{lstlisting} #### 15.脚注: \footnote[]{} \[\]里面表示标注的符号,一般直接忽略,默认情况下使用阿拉伯数字。 {}表示标注的内容。 Cristiano Ronaldo dos Santos Aveiro\footnote{a famous football player} 效果图: ![](https://i-blog.csdnimg.cn/direct/3dd7a48df24a414d81748e82709fe62d.png) #### 16.参考文献的引用: 不好用图片等说明:推荐看一下这位博主的视频。 [最容易的LaTeX插入参考文献方法---使用BibTex文件(TeXstudio演示)_哔哩哔哩_bilibili](https://www.bilibili.com/video/BV15K411176R/ "最容易的LaTeX插入参考文献方法—使用BibTex文件(TeXstudio演示)_哔哩哔哩_bilibili") \begin{document} \section{Introduction} 密码学是研究编制密码和破译密码的技术科学 \cite{b1},在现代特别指对信息以及其传输的数学性研究,常被认为是数学和计算机科学的分支,和信息论也密切相关。 \cite{b2}。 \section{References} % 参考文献列表 \bibliographystyle{plain} \bibliography{reference.bib} \end{document} 接下来需要创建一个名为 `sample-bib.bib` 的BibTeX文件,用于存储你的参考文献信息。 引用颜色的设置: \usepackage[colorlinks,bookmarksopen,bookmarksnumbered,citecolor=green, linkcolor=red, urlcolor=blue]{hyperref} % citecolor为参考文献颜色,linkcolor为图表和公式引用的颜色,urlcolor为超链接颜色。 15.标签 \label{} %是一个在LaTeX中用来标记某个位置或对象的命令。它通常与 \ref{} 或者 \pageref{} 结合使用,用于在文 %档中引用这些标签所标记的位置或对象。 \section{Introduction}\label{sec:intro} 这是一个简单的介绍部分。 \section{Main Content} 这里是主要内容部分。我们可以引用第 \ref{sec:intro} 节中的内容。 输出为: ![](https://i-blog.csdnimg.cn/direct/6be05b3c9e074c3abd03b79b1a0d7e54.png)

相关推荐
Chef_Chen4 小时前
从0开始学习R语言--Day18--分类变量关联性检验
学习
键盘敲没电4 小时前
【IOS】GCD学习
学习·ios·objective-c·xcode
海的诗篇_5 小时前
前端开发面试题总结-JavaScript篇(一)
开发语言·前端·javascript·学习·面试
AgilityBaby5 小时前
UE5 2D角色PaperZD插件动画状态机学习笔记
笔记·学习·ue5
AgilityBaby5 小时前
UE5 创建2D角色帧动画学习笔记
笔记·学习·ue5
武昌库里写JAVA7 小时前
iview Switch Tabs TabPane 使用提示Maximum call stack size exceeded堆栈溢出
java·开发语言·spring boot·学习·课程设计
一弓虽8 小时前
git 学习
git·学习
Moonnnn.10 小时前
【单片机期末】串行口循环缓冲区发送
笔记·单片机·嵌入式硬件·学习
viperrrrrrrrrr710 小时前
大数据学习(131)-Hive数据分析函数总结
大数据·hive·学习
fen_fen10 小时前
学习笔记(26):线性代数-张量的降维求和,简单示例
笔记·学习·算法