PhysChen.com
主页
物理
笔记 科普 研究
教学
IB 课程
编程
笔记 项目
随笔
所感 所思
摄影
Shenzhen Portrait Cats Others Wuhan Japan
关于
主页
物理
笔记 科普 研究
编程
笔记 项目
摄影
Shenzhen Portrait Cats Others Wuhan Japan
教学
IB 课程
随笔
所感 所思
关于
文章目录
    LaTeX 常用命令与基础模板 陈华的个人主页

    文章信息

    • 标题: LaTeX 常用命令与基础模板
    • 发布时间: 2026 年 7 月 14 日
    • 来源: https://physchen.com/zh-Hans/programming/notes/latex-common-commands/
    • 摘要: LaTeX 中文排版、数学公式、字体、表格、交叉引用、参考文献与常用技巧速查。

    目录

      LaTeX 常用命令与基础模板

      发布于 2026 年 7 月 14 日
      • LaTeX
      • Typesetting

      推荐初学者先阅读《一份(不太)简短的 LaTeX2ε\LaTeX 2\varepsilonLATE​X2ε 介绍》。这是一份系统而易读的入门材料,涵盖 LaTeX\LaTeXLATE​X 的基本排版方法、数学公式、图表和参考文献等内容。

      本文记录我在日常写作中经常使用的模板、命令和排版技巧,主要作为个人备忘。

      一个简单的 LaTeX\LaTeXLATE​X 模板

      下面的模板适用于包含中文和数学公式的普通文章,建议使用 XeLaTeX 或 LuaLaTeX 编译。

      \documentclass[11pt,a4paper,fontset=none]{ctexart}
      
      % 以下字体名称依赖本地操作系统。
      % 如果系统中没有对应字体,编译时会报错。
      \setmainfont{Palatino Linotype} % 西文主要字体,通常为衬线字体
      \setsansfont{Arial}             % 西文无衬线字体
      \setmonofont{Courier New}       % 西文等宽字体,主要用于代码
      
      \setCJKmainfont[
        BoldFont = SimHei,
        ItalicFont = KaiTi
      ]{SimSun}
      % 中文主要字体设为宋体,粗体设为黑体,斜体设为楷体
      
      \usepackage{graphicx} % 插图
      \usepackage{amsmath,amssymb,amsthm} % 数学公式、符号和定理环境
      \usepackage{tikz} % 绘图
      \usetikzlibrary{calc}
      
      % physics 宏包提供导数、矢量、狄拉克符号等命令,
      % 但会重新定义部分数学命令,复杂文档中应注意兼容性。
      \usepackage{physics}
      
      \allowdisplaybreaks % 允许多行公式环境跨页
      
      % hyperref 通常放在大多数宏包之后加载
      \usepackage[
        colorlinks = true,
        bookmarks = true,
        linkcolor = red,
        citecolor = blue,
        urlcolor = blue
      ]{hyperref}
      
      \title{\LaTeX{} 简单模板}
      
      \author{
        陈华\thanks{
          Email: \href{mailto:hua@physchen.com}{hua@physchen.com};
          Blog: \href{https://physchen.com/}{physchen.com}
        }
        \and
        作者 2\thanks{其他信息}
      }
      
      \date{\today}
      
      \begin{document}
      
      \maketitle
      
      \begin{abstract}
      这是摘要。
      \end{abstract}
      
      \tableofcontents
      
      \section{引言}
      
      引用文献~\cite{Chen:2024fzj}。
      
      \textbf{粗体}、\textit{斜体}、行内代码 \verb|x = 1|、
      普通 \LaTeX{} 标志 \LaTeX{} 和版本标志 \LaTeXe{}。
      
      \begin{table}[htbp]
        \centering
        \caption{常用文本排版命令}
        \label{tab:text-commands}
      
        \begin{tabular}{|l|l|}
          \hline
          \textbf{功能} & \textbf{命令} \\ \hline
          注释 & \verb|%| \\ \hline
          英文单引号 & \verb|`text'| \\ \hline
          英文双引号 & \verb|``text''| \\ \hline
          分段 & \verb|\par| \\ \hline
          连字符 & \verb|well-known| \\ \hline
          连接号(en dash) & \verb|1--10| \\ \hline
          破折号(em dash) & \verb|---| \\ \hline
          省略号 & \verb|\ldots| \\ \hline
          正文波浪号 & \verb|\textasciitilde| \\ \hline
          不换行空格 & \verb|~| \\ \hline
          指定可断词位置 & \verb|\-| \\ \hline
          引用文献 & \verb|~\cite{xxx}| \\ \hline
          行内代码 & \verb+\verb|xxx|+ \\ \hline
        \end{tabular}
      \end{table}
      
      表~\ref{tab:text-commands} 总结了一些常用的文本排版命令。
      
      \section{质能方程\texorpdfstring{$E=mc^2$}{E = mc²}}
      
      爱因斯坦场方程为
      
      \begin{equation}
        R_{\mu\nu}
        - \frac{1}{2}R g_{\mu\nu}
        + \Lambda g_{\mu\nu}
        =
        \frac{8\pi G}{c^4}T_{\mu\nu}\,.
        \label{eq:einstein}
      \end{equation}
      
      其中,$R_{\mu\nu}$ 是里奇张量,$R$ 是标量曲率,
      $g_{\mu\nu}$ 是时空度规,$\Lambda$ 是宇宙学常数,
      $G$ 是牛顿引力常数,$c$ 是真空中的光速,
      $T_{\mu\nu}$ 是能量—动量张量。
      
      引用公式~\eqref{eq:einstein}。
      
      \appendix
      
      \section{附录}
      
      \bibliographystyle{unsrt}
      \bibliography{refs} % 对应 refs.bib 文件
      
      \end{document}

      常用命令和技巧

      自适应定界符

      使用成对的 \left 和 \right,可以使括号根据内部公式的高度自动调整大小。

      例如:

      \left(\frac{x}{y}\right)

      输出:

      (xy)\left(\frac{x}{y}\right)(yx​)

      \left 和 \right 必须成对出现。若只需要显示其中一侧,可以使用句点 . 表示不可见的定界符。

      例如:

      \left.V(\phi)\right|_{\phi_{\min}}

      输出:

      V(ϕ)∣ϕmin⁡\left.V(\phi)\right|_{\phi_{\min}}V(ϕ)∣ϕmin​​

      也可以使用 amsmath 提供的 \rvert:

      \left.V(\phi)\right\rvert_{\phi_{\min}}

      输出:

      V(ϕ)∣ϕmin⁡\left.V(\phi)\right\rvert_{\phi_{\min}}V(ϕ)∣ϕmin​​

      需要注意,\left 和 \right 生成的定界符有时会显得过大。若只需要手动调整一级大小,也可以使用:

      \bigl( \bigr)
      \Bigl( \Bigr)
      \biggl( \biggr)
      \Biggl( \Biggr)

      其中,l 和 r 分别表示左定界符和右定界符,可以帮助 LaTeX\LaTeXLATE​X 正确处理数学间距。

      行内公式中的分数

      \frac 会根据当前数学环境自动选择分数大小。

      $E=\frac{h}{\lambda}$

      输出:E=hλE=\frac{h}{\lambda}E=λh​。

      \dfrac 强制使用展示公式中的较大分数样式:

      $E=\dfrac{h}{\lambda}$

      输出:E=hλE=\dfrac{h}{\lambda}E=λh​。

      \tfrac 强制使用行内公式中的较小分数样式:

      $E=\tfrac{h}{\lambda}$

      输出:E=hλE=\tfrac{h}{\lambda}E=λh​。

      在普通正文中,通常优先使用 \frac。频繁使用 \dfrac 会增大行距,影响段落排版。

      章节标题中的数学公式

      章节标题中可以包含数学公式,例如:

      \section{质能方程 $E=mc^2$}

      但是,在加载 hyperref 后,数学命令通常无法直接写入 PDF 书签,可能出现警告或书签显示异常。

      可以使用 \texorpdfstring 分别指定正文标题和 PDF 书签中的文本:

      \section{质能方程\texorpdfstring{$E=mc^2$}{E = mc²}}

      其中:

      • 第一个参数用于正文中的章节标题;
      • 第二个参数用于 PDF 书签,应尽量使用普通文本。

      通用形式为:

      \texorpdfstring{LaTeX 排版内容}{PDF 书签文本}

      数学公式中的文本

      数学环境中的普通文字应使用 \text{}:

      v_{\text{initial}}

      输出:

      vinitialv_{\text{initial}}vinitial​

      对于具有固定数学含义的运算符,优先使用对应的数学命令。例如:

      \sin x
      \cos x
      \ln x
      \min f(x)
      \max f(x)

      而不是:

      sin x
      cos x
      ln x
      min f(x)
      max f(x)

      例如,下标中的最小值可以写为:

      \phi_{\min}

      输出:

      ϕmin⁡\phi_{\min}ϕmin​

      如果 min 只是说明性文字,而不是数学运算符,也可以写成:

      \phi_{\mathrm{min}}

      或者:

      \phi_{\text{min}}

      公式编号与交叉引用

      带编号的单行公式通常使用 equation 环境:

      \begin{equation}
        E = mc^2
        \label{eq:mass-energy}
      \end{equation}

      引用公式时使用:

      公式~\eqref{eq:mass-energy}

      建议为不同类型的标签添加统一前缀:

      eq:mass-energy
      fig:spacetime
      tab:parameters
      sec:introduction
      app:derivation

      常见前缀包括:

      对象推荐前缀
      公式eq:
      图片fig:
      表格tab:
      章节sec:
      附录app:

      LaTeX 文档通常需要至少编译两次,才能正确生成交叉引用、目录和编号。

      多行公式对齐

      多行公式通常使用 align 环境,并在需要对齐的位置放置 &:

      \begin{align}
        (a+b)^2
        &= a^2 + 2ab + b^2, \\
        (a-b)^2
        &= a^2 - 2ab + b^2.
      \end{align}

      输出:

      (a+b)2=a2+2ab+b2,(a−b)2=a2−2ab+b2.\begin{aligned} (a+b)^2 &=a^2+2ab+b^2,\\ (a-b)^2 &=a^2-2ab+b^2. \end{aligned}(a+b)2(a−b)2​=a2+2ab+b2,=a2−2ab+b2.​

      如果不需要公式编号,可以使用 align*:

      \begin{align*}
        F &= ma, \\
        p &= mv.
      \end{align*}

      单个带编号公式通常使用 equation,不必使用 align。

      数学公式中的标点

      数学公式是句子的一部分,因此公式末尾是否添加逗号或句号,应由句子的语法结构决定。

      例如:

      爱因斯坦场方程为
      \begin{equation}
        G_{\mu\nu} + \Lambda g_{\mu\nu}
        =
        \frac{8\pi G}{c^4}T_{\mu\nu}\,.
      \end{equation}

      其中,\,. 在句点前加入一个较小的数学间距,使标点与公式主体之间的距离更自然。

      类似地,也可以使用:

      \,,

      在公式末尾加入逗号。

      不换行空格

      波浪号 ~ 在 LaTeX 中表示不换行空格,常用于防止编号与前面的文字分离。

      例如:

      图~\ref{fig:example}
      表~\ref{tab:example}
      公式~\eqref{eq:example}
      文献~\cite{example}
      第~1~章

      不建议写成:

      图 \ref{fig:example}

      因为普通空格允许在此处换行,可能导致“图”和编号出现在不同的行。

      连字符、连接号与破折号

      LaTeX 中不同数量的短横线具有不同含义:

      输入名称示例
      -连字符(hyphen)well-known
      --连接号(en dash)1--10
      ---破折号(em dash)text---text

      例如:

      Pages 1--10

      用于表示第 1 页到第 10 页。

      This is important---perhaps essential.

      用于英文句子中的插入或转折。

      中文文章通常可以直接输入中文标点,例如:

      这是一个补充说明——也是一个重要提醒。

      引号

      传统 LaTeX 英文引号的输入方式为:

      `single quotation'
      ``double quotation''

      中文内容通常可以直接输入中文引号:

      “这是中文双引号。”
      ‘这是中文单引号。’

      如果文档需要自动处理多语言引号,可以使用 csquotes 宏包。

      省略号

      正文中的省略号可以使用:

      \ldots

      数学公式中,根据上下文可以使用:

      \ldots
      \cdots
      \vdots
      \ddots

      例如:

      a_1,a_2,\ldots,a_n

      输出:

      a1,a2,…,ana_1,a_2,\ldots,a_na1​,a2​,…,an​
      a_1+a_2+\cdots+a_n

      输出:

      a1+a2+⋯+ana_1+a_2+\cdots+a_na1​+a2​+⋯+an​

      其中:

      • \ldots 位于基线附近,常用于逗号分隔的序列;
      • \cdots 位于数学中线附近,常用于加法或乘法序列;
      • \vdots 表示竖直省略号;
      • \ddots 表示对角省略号。

      波浪号

      在 LaTeX 中,直接输入 ~ 表示不换行空格,并不会输出可见的波浪号。

      若要在正文中输出 ASCII 波浪号,可以使用:

      \textasciitilde

      例如:

      The path is \textasciitilde/user/documents.

      命令:

      \~{a}

      表示在字母上方添加波浪形重音,输出类似于:

      a~\tilde{a}a~

      它并不是专门用于输出独立波浪号的命令。

      正体、斜体与粗体

      正文中常用:

      \textbf{粗体}
      \textit{斜体}
      \texttt{等宽字体}
      \textsf{无衬线字体}
      \textrm{衬线字体}

      数学环境中常用:

      \mathbf{A}
      \mathrm{d}
      \mathit{x}
      \mathsf{A}
      \mathtt{A}

      需要注意,\mathbf 主要适用于拉丁字母和数字,对希腊字母通常不起作用。

      若需要加粗希腊字母,可以使用:

      \boldsymbol{\alpha}

      或者:

      \bm{\alpha}

      其中 \bm 需要加载:

      \usepackage{bm}

      微分符号

      在物理和数学排版中,微分符号 d\mathrm{d}d 通常使用正体:

      \int f(x)\,\mathrm{d}x

      输出:

      ∫f(x) dx\int f(x)\,\mathrm{d}x∫f(x)dx

      其中:

      \,

      用于在被积函数和微分符号之间加入较小的间距。

      也可以自定义命令:

      \newcommand{\dd}{\mathop{}\!\mathrm{d}}

      然后写成:

      \int f(x)\,\dd x

      如果加载了 physics 宏包,也可以使用:

      \int f(x)\dd{x}

      不过,自定义命令和 physics 宏包的命令不应混用,以免风格不统一。

      常用数学间距

      LaTeX 会自动处理大部分数学间距,也可以使用以下命令手动调整:

      命令效果
      \,小间距
      \:中等间距
      \;较大间距
      \quad一个较大的水平间距
      \qquad两个 \quad
      \!负间距

      例如:

      \int f(x)\,\mathrm{d}x
      A \quad \text{and} \quad B

      不应为了视觉对齐而大量手动添加空格。优先使用合适的数学环境和对齐命令。

      图片

      插入图片需要加载:

      \usepackage{graphicx}

      基本用法:

      \begin{figure}[htbp]
        \centering
        \includegraphics[width=0.8\textwidth]{example-image}
        \caption{示例图片}
        \label{fig:example}
      \end{figure}

      引用图片:

      图~\ref{fig:example}

      常用尺寸参数包括:

      width=\textwidth
      width=0.8\textwidth
      height=5cm
      scale=0.5

      通常只指定 width 或 height 中的一个,以保持图片原有的宽高比。

      表格

      tabular 环境负责实际的表格结构,table 环境则是可以浮动、添加标题和交叉引用的外层环境。

      例如:

      \begin{table}[htbp]
        \centering
        \caption{参数取值}
        \label{tab:parameters}
      
        \begin{tabular}{ccc}
          \hline
          参数 & 符号 & 数值 \\
          \hline
          光速 & $c$ & $3.00\times10^8\,\mathrm{m\,s^{-1}}$ \\
          引力常数 & $G$ & $6.67\times10^{-11}\,\mathrm{N\,m^2\,kg^{-2}}$ \\
          \hline
        \end{tabular}
      \end{table}

      对于正式排版,通常推荐使用 booktabs 宏包:

      \usepackage{booktabs}

      然后使用:

      \begin{table}[htbp]
        \centering
        \caption{参数取值}
        \label{tab:parameters-booktabs}
      
        \begin{tabular}{ccc}
          \toprule
          参数 & 符号 & 数值 \\
          \midrule
          光速 & $c$ & $3.00\times10^8\,\mathrm{m\,s^{-1}}$ \\
          引力常数 & $G$ & $6.67\times10^{-11}\,\mathrm{N\,m^2\,kg^{-2}}$ \\
          \bottomrule
        \end{tabular}
      \end{table}

      正式科技文档中通常不建议使用大量竖线。

      超链接

      加载 hyperref 后,可以使用:

      \href{https://www.example.com}{网站名称}

      电子邮件链接:

      \href{mailto:name@example.com}{name@example.com}

      直接显示网址:

      \url{https://www.example.com}

      文档内部的章节、公式、图表和参考文献引用也会自动生成可点击链接。

      参考文献

      传统 BibTeX 工作流可以使用:

      \bibliographystyle{unsrt}
      \bibliography{refs}

      其中:

      \bibliography{refs}

      对应当前目录下的 refs.bib 文件。

      正文中引用:

      \cite{Chen:2024fzj}

      为了避免“文献”和编号之间换行,通常写成:

      文献~\cite{Chen:2024fzj}

      典型编译顺序为:

      xelatex main.tex
      bibtex main
      xelatex main.tex
      xelatex main.tex

      如果使用 LuaLaTeX ,则将 xelatex 替换为 lualatex。

      对于新文档,也可以使用 biblatex 和 Biber ,但其配置方式与传统 BibTeX 不同,不应混用。

      注释

      单行注释使用 %:

      这是正文。 % 这是注释

      百分号之后直到该行末尾的内容都不会出现在输出文档中。

      百分号还会忽略其后的换行,因此可以用于避免源代码换行产生额外空格:

      这是一段很长的%
      连续文本。

      输出时相当于:

      这是一段很长的连续文本。

      特殊字符

      以下字符在 LaTeX 中具有特殊含义,直接输入可能报错或产生特殊效果:

      # $ % & _ { } ~ ^ \

      常见转义方法:

      字符输入方式
      #\#
      $\$
      %\%
      &\&
      _\_
      {\{
      }\}
      ~\textasciitilde
      ^\textasciicircum
      \\textbackslash

      XeLaTeX 与 LuaLaTeX

      包含中文和系统字体的文档通常建议使用 XeLaTeX 或 LuaLaTeX 编译。

      XeLaTeX 的命令为:

      xelatex main.tex

      LuaLaTeX 的命令为:

      lualatex main.tex

      传统 pdfLaTeX 对 Unicode 、中文和系统字体的直接支持较弱,不适合直接编译本文中的模板。

      关于本地字体

      以下字体名称在 Windows 中较为常见:

      Palatino Linotype
      Arial
      Courier New
      SimSun
      SimHei
      KaiTi

      但它们不一定存在于 Linux 、 macOS 或在线 LaTeX 环境中。

      如果字体不存在,可以:

      1. 将字体名称替换为当前系统已经安装的字体;
      2. 删除 fontset=none 和手动字体设置,使用 ctex 的默认字体配置;
      3. 使用 TeX Live 自带的开源字体;
      4. 在在线环境中上传具有合法使用权限的字体文件。

      为了提高模板的可移植性,可以使用更简单的文档类设置:

      \documentclass[11pt,a4paper]{ctexart}

      然后删除全部 \setmainfont、\setsansfont、\setmonofont 和 \setCJKmainfont 设置,让 ctex 根据编译环境自动选择可用字体。

      上一篇 下一篇 JavaScript 2. 函数 2026 年 7 月 11 日
      © 2026 CHEN Hua All rights reserved
      闽ICP备2026003335号 · 粤公网安备44030002014022号
      © Hua Chen / PhysChen.com