惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
Check Point Blog
S
Schneier on Security
P
Privacy & Cybersecurity Law Blog
S
Security @ Cisco Blogs
W
WeLiveSecurity
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Microsoft Azure Blog
Microsoft Azure Blog
NISL@THU
NISL@THU
T
Troy Hunt's Blog
L
LangChain Blog
L
LINUX DO - 最新话题
T
The Exploit Database - CXSecurity.com
Engineering at Meta
Engineering at Meta
N
News and Events Feed by Topic
A
About on SuperTechFans
N
Netflix TechBlog - Medium
P
Proofpoint News Feed
MyScale Blog
MyScale Blog
Martin Fowler
Martin Fowler
Y
Y Combinator Blog
H
Heimdal Security Blog
aimingoo的专栏
aimingoo的专栏
T
Threat Research - Cisco Blogs
SecWiki News
SecWiki News
Microsoft Security Blog
Microsoft Security Blog
T
Tenable Blog
P
Proofpoint News Feed
H
Hacker News: Front Page
G
GRAHAM CLULEY
I
Intezer
V
V2EX
S
Secure Thoughts
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
Latest news
Latest news
Recent Announcements
Recent Announcements
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
博客园_首页
Webroot Blog
Webroot Blog
博客园 - 三生石上(FineUI控件)
AI
AI
N
News | PayPal Newsroom
Google DeepMind News
Google DeepMind News
Security Archives - TechRepublic
Security Archives - TechRepublic
B
Blog RSS Feed
美团技术团队

静观小窗

一个有趣的项目背后的难点--MC的3D皮肤生成器 power by Qwen 博客俱乐部,最有社区氛围的中文博客联盟 文化决定语言,语言决定思想:我们赖以生存的隐喻(读后感) 我开发了一款博客图片压缩工具,支持PicGo一键压缩上传 寻找网络友邻 整合全网102个二次元动漫随机图片API接口,2025年十月最新 宋代的遗憾 搭建个人起始网站,便于控制浏览器使用和时间规划 Google Gemini CLI 免费安装配置指南:支持Gemini 2.5 Pro (2025最新) NixOS深度评测:一个六年Linux用户的初体验,为何惊艳的设计哲学仍让我望而却步 我的NS2使用体验记录,为什么因为马里奥派对空前盛会入坑 关于秦制的个人理解,为什么秦制在我看来是功过鲜明的必然 拜访一个人,在千年之后 Vercel/Netlify国内加速:EdgeOne免费CDN优选IP实战指南 C/C++程序员必看:JavaScript核心概念深度解析(动态类型、原型链、事件循环) C/C++程序员转向JavaScript:一份超详细的语法映射与避坑指南 从C++到JS:函数、this与闭包的核心差异与实践指南 VSCode配置JavaScript开发环境:Node.js安装与调试指南 C/C++程序员必看:JavaScript变量与作用域深度解析(从var到const) 博客迁移实战:从WordPress到Next.js的零成本高性能之路 《原则》读书笔记:如何将瑞·达利欧的智慧应用到日常 MATLAB入门教程:面向C++/OIer的数据可视化与科学计算指南 软路由远程访问提速:SMB压缩与50M上行优化实战 Hyprland 安装与配置超详细教程 (Arch Linux):含 Waybar 及一键脚本 Linux文件系统与磁盘分区:从入门到精通的实战指南 Guide to Installing a USB WiFi Adapter on OpenWrt (LuCI) 阿里云CentOS 9服务器从零到一:安全配置与宝塔面板安装指南 WordPress个人博客搭建指南:从服务器到主题美化全攻略 Arch/Windows双系统终极指南:无缝鼠标共享与显卡配置 NAS怎么选?黑群晖、CentOS自建与绿联NAS深度对比与选型指南 Arch Linux 安装 KDE Plasma 6:一篇来自老用户的深度评测(2025版) 我的第一份Ubuntu安装与美化笔记(新手超详细避坑指南)
LaTeX公式与三线表教程:从入门到精通的排版指南
间窗 (Vindo) · 2025-08-17 · via 静观小窗

面向“能编译、能复用”的刚需,这份 LaTeX教程 将提供 align 多行公式、矩阵、定理环境与 booktabs 三线表的最小可复用代码集,附 mwelatexmk 一键命令,适合快捷上手与稳定交付。

为什么选择 LaTeX?我的经验之谈

我曾经用 Word 排版数学公式和复杂表格排到崩溃,直到遇到了 LaTeX。它彻底改变了我的学术写作体验。在以下场景,LaTeX 具有明显优势:

  • 无与伦比的数学公式:无论是复杂的积分、矩阵,还是多行对齐的方程组,都能呈现印刷品级别的精美。如果你需要撰写包含大量数学内容的文档,LaTeX 是不二之选。
  • 极致的结构化管理:章节、图表、公式自动编号,目录、参考文献一键生成。对于长篇文档,LaTeX 的结构化能力能让你专注于内容,而无需担心格式。
  • 严格的学术规范:轻松加载全球顶级期刊(如 APA, IEEE, Nature)的官方模板,让你的稿件从格式上就无可挑剔。

一、文档的解剖学:第一个 LaTeX 程序

让我们从一个最基础的“Hello, World”文档开始。下面的代码包含了构成一篇完整文章的所有核心元素。

% --- 导言区 (Preamble): 定义文档的基础规则 ---
\documentclass[12pt, a4paper]{article} % 定义文档类型为'article', 12号字, A4纸张

% 引入功能宏包 (Packages)
\usepackage{ctex}                     % 必不可少!为文档提供完整的中文支持
\usepackage{graphicx}                 % 让我们能够插入图片
\usepackage{amsmath}                  % AMS数学宏包,提供更强大的数学公式环境
\usepackage{amsthm}                   % 用于定义定理、证明等环境
\usepackage{booktabs}                 % 用于绘制专业的“三线表”
\usepackage{listings}                 % 用于插入带高亮的代码块

% --- 文档元数据 (Metadata) ---
\title{我的第一个 \LaTeX{} 文档}      % 定义标题
\author{Jc}                           % 定义作者
\date{\today}                         % 定义日期, \today会自动生成当天日期

% --- 正文区 (Document Body): 文档的实际内容 ---
\begin{document}

\maketitle                            % 命令:在这里生成并显示标题、作者、日期

\tableofcontents                      % 命令:在这里生成并显示目录

\section{引言 (Introduction)}         % 创建一个一级标题
这里是引言部分。注意,在 \LaTeX{} 中,你无需关心换行和缩进,它会为你自动处理。
一个空行代表一个新段落的开始。

\subsection{背景介绍}                 % 创建一个二级标题
我们可以在这里插入一张图片作为示例。

\begin{figure}[htbp]                  % 'figure'环境, [htbp]是图片位置建议: here, top, bottom, page
    \centering                        % 图片居中
    \includegraphics[width=0.5\textwidth]{demo.png} % 插入图片, 宽度为文本宽度的50%
    \caption{这是一张示例图片}        % 图片的标题, 会自动编号
    \label{fig:demo}                  % 为图片设置一个标签, 用于后文引用
\end{figure}

在图 \ref{fig:demo} 中,我们展示了一个示例。看,交叉引用就是这么简单!

\end{document}

二、数学公式(核心模块)

这是 LaTeX 最令人着迷的部分。掌握 LaTeX公式 的排版是学术写作的必备技能。

1. 多行公式的艺术:对齐与编号

% 使用 align 环境,它会按照 & 符号的位置进行对齐
\begin{align}
    f(x) &= (a+b)^2 \notag \         % '&=' 表示在此对齐, '\notag' 表示本行不生成编号
         &= a^2 + 2ab + b^2 \label{eq:expand} % 为此公式行添加标签
\end{align}
根据公式 \eqref{eq:expand},我们可以得到... % \eqref 会为公式编号加上括号

2. 矩阵与方程组:结构化数学之美

% \[ ... \] 是书写独立数学公式的快捷方式
\[
% \mathbf{} 用于将字母加粗,常用于表示向量或矩阵
\mathbf{A} = 
\begin{pmatrix}          % pmatrix 环境创建一个带圆括号的矩阵
  1 & 2 \\
  3 & 4 
\end{pmatrix}, 
\quad % \quad 用于在公式中产生一个较大间距
% cases 环境用于创建分段函数或方程组
\begin{cases}
   x + 2y = 5 \\
   3x - y = 1 
\end{cases}
\]

3. 定理环境:让论证更具权威

% 首先在导言区定义定理样式
\newtheorem{theorem}{定理}[section] % 定义一个'theorem'环境, 名字叫“定理”, 编号随section变化

\begin{theorem}[勾股定理] % 环境的可选参数是定理的名称
在任何一个平面直角三角形中,两条直角边的平方之和,一定等于斜边的平方。
\begin{align*} a^2 + b^2 = c^2 \end{align*} % 使用 align* 避免公式编号
\end{theorem}

三、超越文本:专业表格与有序列表

掌握 LaTeX表格 的排版,特别是三线表,是学术论文的必备技能。

1. 三线表:学术论文的唯一标准

忘掉 Word 里那些复杂的边框线吧。booktabs 宏包提供的三线表简洁、清晰、专业。

\begin{tabular}{lccr} % 'l', 'c', 'r' 分别代表列内容左对齐、居中、右对齐
  \toprule % 顶部粗线
  姓名 & 年龄 & 成绩 \\
  \midrule % 中部细线
  张三 & 20 & 95 \\
  李四 & 19 & 88 \\
  \bottomrule % 底部粗线
\end{tabular}

2. 嵌套列表:清晰的逻辑层次

\begin{itemize} % 无序列表环境
  \item 这是第一级条目
    \begin{enumerate} % 有序列表环境
    \item 这是第二级编号条目
    \item 我们可以轻松插入特殊符号:$\star$ $\dagger$ $\S$
  \end{enumerate}
  \item 回到第一级条目
\end{itemize}

四、效率倍增:五个实用技巧

  1. 优雅地插入代码 (listings 宏包)

\begin{lstlisting}[language=Python, caption={Python 示例}] def hello_latex(): print("Hello, LaTeX!")

代码将保持格式和高亮

\end{lstlisting}


2.  **自动化参考文献管理** (BibTeX)

-   **文中引用**: `爱因斯坦 \cite{einstein1905} 提出了...`
-   **文末生成列表**: `\bibliography{my_references}` (引用 `my_references.bib` 数据库)

3.  **定义你自己的快捷命令**

```latex
% 在导言区定义
\newcommand{\R}{\mathbb{R}} % 定义新命令 \R 代表数学中的实数集符号
% 在正文中使用 $\R$ 表示所有实数的集合。
% 使用效果:ℝ 表示所有实数的集合。
  1. 强制图片位置: 将 [htbp] 替换为 [!h],LaTeX 会“不惜一切代价”将图片放在此处 (here)。

  2. 语法高亮与自动补全: 使用 VS Code + LaTeX Workshop 插件,或专用的 TeXStudio 编辑器,能极大地提升编写体验。

五、学习路线图

LaTeX学习路线图,分为入门、进阶和精通三个阶段

  1. 第一天 (入门):注册一个 Overleaf 账号。这是一个强大的在线 LaTeX 编辑器,无需在本地安装任何东西,拥有海量模板,让你在 30 分钟内完成并编译第一份文档。

  2. 第一周 (进阶):通读一份简明教程,如**《一份(不太)简短的 LaTeX 2ε 介绍》** (The Not So Short Introduction to LaTeX 2ε),并尝试用 LaTeX 完成一次课程作业或报告。

  3. 第一个月 (精通):挑战一个具体项目,如制作一份精美的个人简历、使用 Beamer 宏包制作一份学术幻灯片,或使用 TikZ 绘制一个复杂的流程图。

建议:从模仿开始,以需求驱动。先找到合适模板并逐步修改;遇到具体问题(如“并排图片”)再查文档。

编译错误常见来源:拼写错误、括号/大括号不匹配、导言区缺少 \usepackage{}

六、本地安装与编译(可复制)

  • 安装(TeX Live,Linux):

    sudo apt install -y texlive-full latexmk
    
  • 安装(Windows,MiKTeX):

    1. 下载并安装 MiKTeX;2) 勾选自动安装缺失宏包;3) 安装 latexmk(可通过 MiKTeX Console)。
  • 最小可复现实例(mwe.tex):

    \documentclass{article}
    \usepackage{amsmath}
    \begin{document}
    Hello, LaTeX.
    \begin{align}
      E &= mc^2
    \end{align}
    \end{document}
    
  • 一键编译:

    latexmk -pdf -interaction=nonstopmode mwe.tex
    

七、常见错误速查表

  • 缺宏包:日志中包含 “Undefined control sequence”。解决:在导言区添加对应宏包(如 \usepackage{graphicx})。
  • 括号/环境不匹配:日志定位到上一行或更上方。解决:对齐 \begin{}\end{},善用编辑器括号高亮。
  • 中文乱码:未加载 ctex 或字体问题。解决:导言区加 \usepackage{ctex};Windows/中文字体需在 ctex 宏包文档中确认配置。
  • 图片插入失败:路径或后缀错误。解决:使用相对路径,图片建议放 figures/ 并避免中文文件名。
  • 交叉引用 “??”:未编译足够轮次。解决:使用 latexmk 自动多轮编译。