latex學(xué)習(xí)筆記

Latex介紹

LaTeX是什么?

  • TeX(/t?x/):排版軟件,尤其是對于復(fù)雜數(shù)學(xué)公式的處理,數(shù)學(xué)、物理學(xué)和計算機科學(xué)界十分流行。

  • LaTeX(/?lɑ?t?x/):是一種基于TeX的排版系統(tǒng),即使用戶沒有排版和程序設(shè)計的知識也可以充分發(fā)揮由TeX所提供的強大功能,不必一一親自去設(shè)計或校對,

LaTex軟件介紹

環(huán)境和編輯器區(qū)分,就像python環(huán)境(編譯器環(huán)境)和pycharm\jupyter(編輯器)區(qū)分一樣

運行環(huán)境(3種):LaTeX類似于Linux系統(tǒng),它有多個發(fā)行版,例如 MiKTeX 、 proTeXt 和TeX Live(官方版),其中proTeXt是基于MiKTeX打包的。因此重點介紹MiKTex與TeX Live的區(qū)別。中文套裝CTex 已經(jīng)不再維護。

Texlive包比較全,Miktex占用空間比較小,遇到需要的包需要在線下載。所以,硬盤空間比較充足的,網(wǎng)絡(luò)不太方便的電腦,可以選擇Texlive,反之硬盤空間小,一直保持網(wǎng)絡(luò)鏈接的可以選擇Miktex。

編寫LaTeX文檔的編輯器(20多種):兩大類,一種為WYSIWYG,所見即所得,實時預(yù)覽,類似于Word,另一種是純文本編輯器,有語法高亮,沒有預(yù)覽功能,編譯成PDF后才能預(yù)覽。編輯器有:LyX、TeXworks、TexStudio、WinEdt、TeXmaker、Emacs、Sublime Text、Atom、Visual Studio Code

[專為 TeX 設(shè)計的編輯器TeXworks, TeXmaker, TeXstudio, WinEdt 等;通用的文本編輯器Emacs、Sublime Text、Atom、Visual Studio Code等]

TeXworks:TeXlive自帶的一款,代碼高亮和字體顯示效果不好

==TexStudio==:集編輯和預(yù)覽于一身,用起來比較方便,比較省心。但是Window上的感覺視覺效果不如Linux上的

WinEdt:CTeX自帶的一款,功能比較齊全,入門首推這款,下載CTeX即可,也可以單獨安裝【CTeX+WinEdt、Texlive+WinEdt、】

VSCode+Latex Workshop(插件)

  • 在 LaTeX 文件中,按 Ctrl + Alt + J 跳轉(zhuǎn)到對應(yīng)的 PDF 文件位置

  • 在 PDF 文件中,按下 Ctrl + 同時鼠標單擊,跳轉(zhuǎn)到對應(yīng)的 LaTeX 文件位置。

在線版:overleaf

插件:Pandoc LaTex轉(zhuǎn)成docx 教程

latex安裝

TeXlive+TexStudio

1.==TeXlive==下載安裝

  • 下載:https://mirrors.tuna.tsinghua.edu.cn/ctan/systems/texlive/Images/ 清華大學(xué)開源軟件鏡像站進行下載textlive2021.iso

  • 以管理員身份運行install-tl-windows.bat,安裝路徑需要為英文路徑

  • 選擇Advanced,去掉一些不需要的語言包等

    N. of collections選項,并根據(jù)個人需要,去掉Texworks(比較老的編輯器,不推薦)以及部分我們?nèi)粘2粫褂玫恼Z言包,例如阿拉伯語、斯洛伐克語等等,設(shè)置如下:


    image.png
  • 耐心等待,中途不可以退出

  • 命令行輸入以下查看是否出現(xiàn)版本信息

    tex -v
    latex -v or  latex --version
    xelatex -v
    pdflatex -v
    
    • 沒有出現(xiàn)版本信息需要配置環(huán)境變量
    • 將tex live安裝根目錄下的bin/win32目錄添加到系統(tǒng)環(huán)境變量path
    • 配好環(huán)境變量后再查看版本信息,如下圖表示配置成功

2.==TexStudio==下載安裝配置

  • 官網(wǎng)下載,傻瓜式安裝即可

  • texstudio配置中文,點擊options→ \to→Configure TeXstudio;anguage這里選擇zh_CN

  • 設(shè)置編譯環(huán)境為XeLaTeX,options→ \to→Configure TeXstudio點擊構(gòu)建,默認編譯器選擇XeLaTeX(輸出文檔就可以顯示中文內(nèi)容) 英文是pdfLatex,寫英文文獻的時候用這個


    image.png

編譯器XeLaTex時,中文文檔時,可以將拼寫檢查關(guān)掉,會更清爽

image.png

3.測試效果

新建文件---編輯如下代碼----點擊構(gòu)建并查看按鈕,或者按F5

\documentclass{article}
% 這里是導(dǎo)言區(qū)
\begin{document}
Hello, world!
\end{document}

可以使用texwork 也可以使用texstudio

TexStudio 使用教程及快捷鍵

1. 快捷鍵

1、F5 :構(gòu)建并查看
2、F6 :編譯
3、Ctrl + T :注釋選定代碼
4、Ctrl + U :取消選定代碼注釋
5、Ctrl + F :可對源碼或者PDF查看器的內(nèi)容進行搜索定位,搜索文字可以同時定位源碼和文檔。按住Ctrl + 鼠標單擊,即可實現(xiàn)由 源碼 <------>文檔 定位
6、Ctrl + H 第一次跳到開始處,第二次跳到上次修改處

2. 寫作技巧

最好一句話一行,方便修改

3. 便捷操作

打開兩個視圖:兩個文件,可以選擇一個移動到其它視圖,然后垂直或水平分裂


image.png

Latex使用教程

英文默認pdfLaTeX,中文使用XeLaTeX

文件命名,路徑都不要出現(xiàn)中文名字

控制序列

以反斜杠 \ 開頭,以第一個空格或非字母** 的字符結(jié)束的一串文字,不被輸出,但會影響輸出文檔的效果。

  • \documentclass{article} 中包含控制序列documentclass,它后面緊跟著的 {article} 代表這個控制序列有一個必要的參數(shù),該參數(shù)的值為 article。這個控制序列的作用,是調(diào)用名為 article 的文檔類。
  1. 部分控制序列還有被方括號 [] 包括的可選參數(shù)
  2. 大小寫是敏感的
  3. 文檔類,即是 TeX 系統(tǒng)預(yù)設(shè)的(或是用戶自定的)一些格式的集合。不同的文檔類在輸出效果上會有差別。
  • 控制序列 begin。這個控制序列總是與 end 成對出現(xiàn),這兩個控制序列以及他們中間的內(nèi)容被稱為「環(huán)境」;它們之后的第一個必要參數(shù)總是一致的,被稱為環(huán)境名。只有在環(huán)境里的內(nèi)容才會被正常輸出到文檔中去或是作為控制序列對文檔產(chǎn)生影響,\end{環(huán)境名}之后插入的內(nèi)容無效
  • \documentclass{article} 開始到 \begin{document} 之前的部分被稱為導(dǎo)言區(qū):對整篇文檔進行設(shè)置的區(qū)域,導(dǎo)言區(qū)出現(xiàn)的控制序列會影響整篇文檔的格式。通常在導(dǎo)言區(qū)設(shè)置頁面大小、頁眉頁腳樣式、章節(jié)標題樣式等等。
  • \usepackage{} 可以用來調(diào)用宏包。

注釋

以百分號 % 作為注釋標記;若要輸出%,則要在前面添加反斜杠\進行轉(zhuǎn)義

文字修改

% 下劃線
\usepackage{soul}
\hl{This will be highlight.}

% 刪除線
\usepackage{ulem}
\sout{文字} %刪除線
\uwave{文字} %波浪線
\xout{文字} %斜刪除線
\uuline{文字}  %雙下劃線
% 字體顏色
\usepackage{color}
% 1.使用已經(jīng)定義好的顏色
{\color{red/blue/green/black/white/cyan/magenta/yellow} 文本}
{\color{blue} This color of text will be changed}
\textcolor{red/blue/green/black/white/cyan/magenta/yellow}{text}
\textcolor{red}{text}

% 2.組合rgb成想要的顏色,rgb取值范圍為[0-1],RGB取值范圍為[0-255]
\textcolor[rgb]{r,g,b}{text}
\textcolor[RGB]{R,G,B}{text}

\textcolor[rgb]{1,0,0}{文本}

% 3.定義一種顏色
\definecolor{ColorName}{rgb}{r,g,b}  %這時r/g/b的定義域就在[0-1]
\definecolor{ColorName}{RGB}{R,G,B}  %這時R/G/B的定義域就在[0-255]
\textcolor{ColorName}{text}


修改稿件

% 導(dǎo)言區(qū)
\newcommand{\minew}[1]{{\color{red}{#1}}}
\newcommand{\miold}[1]{{\textcolor[RGB]{192,192,192}{#1}}}

We must accept \miold{finite }disappointment, but we must \minew{never} lose infinite hope.

% revised version打開注釋,pure version注釋掉導(dǎo)言區(qū)的新命令即可

中英混排

以 UTF-8 編碼保存,使用 XeLaTeX 編譯

\documentclass[UTF8]{ctexart}
\begin{document}
你好,world!
\end{document}
% 1.文檔類從 article 變?yōu)?ctexart;
% 2.增加了文檔類選項 UTF8。



% 使用 xeCJK 宏包來支持中英文混排。不過大多數(shù)情況是不推薦這樣做的
\documentclass{article}
\usepackage{xeCJK} %調(diào)用 xeCJK 宏包
\setCJKmainfont{SimSun} %設(shè)置 CJK 主字體為 SimSun (宋體)
\begin{document}
你好,world!
\end{document}

字體設(shè)置

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

<字體文件路徑>: <字體表示名1>, <字體表示名2>:Style=<字體類型>
C:/WINDOWS/fonts/simsun.ttc: 宋體,SimSun:style=Regular

兩個表示名,填入任意一個都有同樣的效果

標題作者日期

\title{你好,world!}
\author{Liam}
\date{\today}
\begin{document}
\maketitle
% 控制序列 maketitle。這個控制序列能將在導(dǎo)言區(qū)中定義的標題、作者、日期按照預(yù)定的格式展現(xiàn)出來。

章節(jié)段落

不要寫段落號,會自動標注

在文檔類 article/ctexart 中,定義了五個控制序列來調(diào)整行文組織結(jié)構(gòu)。他們分別是

  • \section{·}
  • \subsection{·}
  • \subsubsection{·}
  • \paragraph{·}
  • \subparagraph{·}

report/ctexrep中,還有\chapter{·}

在文檔類book/ctexbook中,還定義了\part{·}

另起一段,用兩次換行;\begin之前有效,\subsection前面無效

\\另起一行,不分段

\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{山東大學(xué)} is one of the best university in 山東。
\end{document}

插入目錄

\maketitle,在它的下面插入控制序列 \tableofcontents

\maketitle,在它的上面插入控制序列 \tableofcontents,目錄在首頁

插入?yún)⒖嘉墨I

Google Scholar 的BibTeX經(jīng)常出現(xiàn)期刊名不全這種情況,有條件還是通過 Elsvier,PubMed 等數(shù)據(jù)庫來抓取文獻信息吧

版面設(shè)置

頁眉頁腳

% 頁眉左邊寫名字,中間寫上今天的日期,右邊寫上電話;頁腳的正中寫上頁碼;
% 頁眉和正文之間有一道寬為 0.4pt 的橫線分割
% 導(dǎo)言區(qū)加入以下
\usepackage{fancyhdr} %  fancyhdr 宏包
\pagestyle{fancy}
\lhead{\author}
\chead{\date}
\rhead{152xxxxxxxx}
\lfoot{}
\cfoot{\thepage}
\rfoot{}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\headwidth}{\textwidth}
\renewcommand{\footrulewidth}{0pt}

首行縮進

行間距

段間距

% 修改長度 \parskip 的值來調(diào)整段間距; 在原有的基礎(chǔ)上,增加段間距 0.4em。如果需要減小段間距,只需將該數(shù)值改為負值即可
\addtolength{\parskip}{.4em}

插入數(shù)學(xué)公式

行內(nèi)模式 (inline) :在正文的行文中插入數(shù)學(xué)公式==$ ... $== or \(...\) or \begin{math}...\end{math}
行間模式 (display):獨立排列單獨成行,并自動居中 ==\[ ... \]==;\begin{displaymath} ... \end{displaymath} 或者 \begin{equation*} ... \end{equation*} *表示環(huán)境不編號
需要對行間公式進行編號,則可以使用 equation 環(huán)境==\begin{equation}...\end{equation}==

% 需要在導(dǎo)言區(qū)加載 amsmath 宏包
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Einstein 's $E=mc^2$.
% 行內(nèi)公式的標點,應(yīng)該放在數(shù)學(xué)模式的限定符之外,而行間公式則應(yīng)該放在數(shù)學(xué)模式限定符之內(nèi)。
\[ E=mc^2. \]

\begin{equation}
E=mc^2.
\end{equation}
\end{document}

輔助工具

對于急用的初學(xué)者而言,適當?shù)厥褂幂o助工具(而不形成依賴)也是有一些收益的

  • https://mathpix.com/ 能夠通過熱鍵呼出截屏,而后將截屏中的公式轉(zhuǎn)換成 LaTeX 數(shù)學(xué)公式的代碼。
  • http://detexify.kirelabs.org/classify.html 允許用戶用鼠標在輸入?yún)^(qū)繪制單個數(shù)學(xué)符號的樣式,系統(tǒng)會根據(jù)樣式返回對應(yīng)的 LaTeX 代碼(和所需的宏包)。這在查詢不熟悉的數(shù)學(xué)符號時特別有用。

多行公式

長公式
% 不對齊, multline環(huán)境
% 如果不需要編號,可以使用 `multline*` 環(huán)境代替。
\begin{multline}
x = a+b+c+{} \\
d+e+f+g
\end{multline}


% 需要對齊的公式,可以使用 aligned 次環(huán)境來實現(xiàn),它必須包含在數(shù)學(xué)環(huán)境之內(nèi)  
\[\begin{aligned}
x ={}& a+b+c+{} \\
&d+e+f+g
\end{aligned}\]

\begin{multline} x = a+b+c+{} \\ d+e+f+g \end{multline}

\begin{aligned} x ={}& a+b+c+{} \\ &d+e+f+g \end{aligned}

公式組
% 無需對齊的公式組可以使用 gather 環(huán)境--居中
\begin{gather}
a = b+c+d \\
x = y+z
\end{gather}


% 要對齊的公式組可以使用 align 環(huán)境
\begin{align}
a &= b+c+d \\
x &= y+z
\end{align}

\begin{gather} a = b+c+d \\ x = y+z \end{gather}

\begin{align} a &= b+c+d \\ x &= y+z \end{align}

分段函數(shù)
\[ y= \begin{cases}
-x,\quad x\leq 0 \\
x,\quad x>0
\end{cases} \]

y= \begin{cases} -x,\quad x\leq 0 \\ x,\quad x>0 \end{cases}

上下標

上標^ 來實現(xiàn);下標則是 _,默認只作用于之后的一個字符

如果想對連續(xù)的幾個字符起作用,用花括號 {} 括起來

\[ z = r\cdot e^{2\pi i}. \]

根式與分式

\sqrt{·}
\frac{·}{·} 

強制行內(nèi)模式的分式顯示為行間模式的大小,可以使用 \dfrac, 反之可以使用 \tfrac
在行內(nèi)寫分式,你可能會喜歡 xfrac 宏包提供的 \sfrac 命令的效果。
排版繁分式,你應(yīng)該使用 \cfrac 命令。

運算符

1.\pm\; \times \; \div\; 2.\cdot\; 3.\cap\; \cup\; 4.\geq\; \leq\; \neq\; 5.\approx \; \equiv

\sum, \prod, \lim, \int

\iint\quad \iiint\quad \iiiint\quad \idotsint

% 小運算符
\[ \pm\; \times \; \div\; 
\cdot\; 
\cap\; \cup\;
\geq\; \leq\; \neq\; 
\approx \; \equiv \]

% 連加、連乘、極限、積分等大型運算符
% 可以用 \limits 和 \nolimits 來強制顯式地指定是否壓縮這些上下標
 \sum, \prod, \lim, \int
 \limits  \nolimits
 
 % 多重積分
 \[ \iint\quad \iiint\quad \iiiint\quad \idotsint \]

--------------------------------------------------------------------------------
% \quad:當前字體的一個寬度,即1em
$ \sum_{i=1}^n i\quad \prod_{i=1}^n $
$ \sum\limits _{i=1}^n i\quad \prod\limits _{i=1}^n $

\[ \lim_{x\to0}x^2 \quad \int_a^b x^2 dx \]
\[ \lim\nolimits _{x\to0}x^2\quad \int\nolimits_a^b x^2 dx \]

image.png

括號

(), [], {}, <> \langle\rangle ||\lvert\rvert \lVert\rVert

使用 \big, \Big, \bigg, \Bigg 等一系列命令放在上述括號前面調(diào)整大小。

image.png
\[ \Biggl(\biggl(\Bigl(\bigl((x)\bigr)\Bigr)\biggr)\Biggr) \]
\[ \Biggl[\biggl[\Bigl[\bigl[[x]\bigr]\Bigr]\biggr]\Biggr] \]
\[ \Biggl \{\biggl \{\Bigl \{\bigl \{\{x\}\bigr \}\Bigr \}\biggr \}\Biggr\} \]
\[ \Biggl\langle\biggl\langle\Bigl\langle\bigl\langle\langle x
\rangle\bigr\rangle\Bigr\rangle\biggr\rangle\Biggr\rangle \]

\[ \Biggl\lvert\biggl\lvert\Bigl\lvert\bigl\lvert\lvert x
\rvert\bigr\rvert\Bigr\rvert\biggr\rvert\Biggr\rvert \]

\[ \Biggl\lVert\biggl\lVert\Bigl\lVert\bigl\lVert\lVert x
\rVert\bigr\rVert\Bigr\rVert\biggr\rVert\Biggr\rVert \]

<img src="F:\Note\Typora-image\NN\image-20210530225036885.png" alt="image-20210530225036885" style="zoom: 33%;" />

省略號

\dots, \cdots, \vdots, \ddots 等命令表示。

\dots\cdots 的縱向位置不同,前者一般用于有下標的序列。

\[ x_1,x_2,\dots ,x_n\quad 1,2,\cdots ,n\quad
\vdots\quad \ddots \]

x_1,x_2,\dots ,x_n\quad 1,2,\cdots ,n\quad \vdots\quad \ddots

矩陣

\[ \begin{pmatrix} a&b\\c&d \end{pmatrix} \quad
\begin{bmatrix} a&b\\c&d \end{bmatrix} \quad
\begin{Bmatrix} a&b\\c&d \end{Bmatrix} \quad
\begin{vmatrix} a&b\\c&d \end{vmatrix} \quad
\begin{Vmatrix} a&b\\c&d \end{Vmatrix} \]

\begin{pmatrix} a&b\\c&d \end{pmatrix} \quad \begin{bmatrix} a&b\\c&d \end{bmatrix} \quad \begin{Bmatrix} a&b\\c&d \end{Bmatrix} \quad \begin{vmatrix} a&b\\c&d \end{vmatrix} \quad \begin{Vmatrix} a&b\\c&d \end{Vmatrix}

% 使用 smallmatrix 環(huán)境,可以生成行內(nèi)公式的小矩陣。
Marry has a little matrix $ ( \begin{smallmatrix} a&b\\c&d \end{smallmatrix} ) $.

Marry has a little matrix ( \begin{smallmatrix} a&b\\c&d \end{smallmatrix} ).

圖片

  1. 清晰度:eps>pdf>png>jpg
  2. 圖片文件放在tex文件的同一個文件夾下
  3. 圖片命名中不要出現(xiàn)中文字符、不要空格和其他特殊符號,建議只用英文字母、下劃線和簡單符號
  4. 若圖片格式不是以上四種,或者圖片中空白邊緣過多,可以用PS進行處理并轉(zhuǎn)存為以上四種格式之一
\documentclass{article}
\usepackage{graphicx}%插入圖片的宏包
\usepackage{float} %設(shè)置圖片浮動位置的宏包
\usepackage{subfigure} %插入多圖時用子圖顯示的宏包

\begin{document}
% 單圖插入方法
\begin{figure}[H] %H為當前位置;指定插圖的理想位置htbp;分別代表here在這里、top頁頂、bottom頁尾、float page浮動頁
\centering %圖片居中
\includegraphics[width = .8\textwidth]{a.jpg}%插入圖片,[]中設(shè)置圖片大小,{}中是圖片文件名,可以不加
\caption{圖片標題} %最終文檔中希望顯示的圖片標題
\label{Fig.main} %用于文內(nèi)引用的標簽編號,應(yīng)該放在標題之后
\end{figure}

% 多圖插入方法
% 子圖無空格,可以實現(xiàn)橫排
\begin{figure}[H]
\centering  %圖片全局居中
\subfigure[name1]{
\label{Fig.sub.1}
\includegraphics[width=0.45\textwidth]{picture1.jpg}}
\subfigure[name2]{
\label{Fig.sub.2}
\includegraphics[width=0.45\textwidth]{picture2.jpg}}
\caption{Main name}
\label{Fig.main}
\end{figure}
\end{document}

表格

% 簡單表格使用環(huán)境tabular
% 居左、居中、居右等橫向?qū)R方式,分別用 l、c、r 來表示
\begin{tabular}{|l|c|r|} 
\hline  % 用 \hline 命令表示橫線,在列格式中用 | 表示豎線
操作系統(tǒng)& 發(fā)行版& 編輯器\\
\hline
Windows & MikTeX & TexMakerX \\
\hline
Unix/Linux & teTeX & Kile \\
\hline
Mac OS & MacTeX & TeXShop \\
\hline
通用& TeX Live & TeXworks \\
\hline
\end{tabular}

一些符號

~/~  % 輸出了左右各帶一個空格的斜杠
\eqref{} % amsmath 的\eqref 命令甚至為引用自動加上圓括號

\label{} % 生成編號
\ref{}  % 對label{}的編號進行引用

\verb?delim??code??delim? % 排版簡短的代碼或關(guān)鍵字 
\verb* % 帶一個星號,以顯示空格
例如:\verb|\LaTeX|   \LaTeX
      \verb+(a || b)+  (a || b)
      
\item % 生成有序列表,會自動對列表項編號

學(xué)習(xí)參考: 一份其實很短的 LaTeX 入門文檔

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容