1. 为什么说装对 LaTeX 发行版,等于解决了 80% 的麻烦
先说个我自己的判断:LaTeX 的下载与安装,看起来是个一次性操作,但很多人在第一步就选错了方向。网上搜 LaTeX 安装教程,搜出来的往往是一堆过时的帖子,教你下个 CTeX 或者什么绿色版,结果装完之后宏包更新不了、字体路径乱掉、编译报错看不懂,最后只能在论坛里疯狂翻帖。我见过太多新手把时间耗在这上面,却误以为“LaTeX 本身很难”。不是的,很多时候只是你装的东西不对。
LaTeX 本身不是一个“软件”,而是一套基于 TeX 的排版系统。你真正要下载的,是一个“发行版”——它把 TeX 引擎、LaTeX 宏包、字体、文档类、编译工具链打包在一起,让你开箱即用。相当于你买的不是面粉,而是一整袋配好比例的蛋糕预拌粉。你后续写的所有 .tex 文档,最终都要靠这套发行版里的编译引擎去生成 PDF。
所以“下载与安装 LaTeX”的核心,其实是三件事:选发行版、下对版本、配好路径和编辑器。这三件事做对了,后面写文档、插图片、调公式、改模板都会顺很多。这篇博文我会把从下载到配置 VSCode 的全过程走一遍,把你可能在每一步遇到的坑提前踩平。
2. 下载前的关键抉择:TeX Live、MacTeX、MiKTeX 到底选哪个
2.1 这三个发行版是什么关系
先把名字搞清楚。LaTeX 不是发行版,TeX Live、MacTeX、MiKTeX 才是。很多人搜“latex下载”搜出一堆同名文件,其实都是这些发行版的安装包或在线安装器。
- TeX Live:跨平台(Windows / Linux / macOS 的 Unix 环境),学术圈事实标准。宏包非常全,每年更新一个大版本,自带 tlmgr 包管理器。我主力用它。
- MacTeX:本质上是 macOS 上的 TeX Live 发行版,加了 Mac 专用前端和工具(比如 TeX Live Utility、LaTeXiT),对 macbook 用户最省心。
- MiKTeX:老牌 Windows 发行版,特色是“按需自动安装缺失宏包”——你编译时缺哪个包,它现场下哪个。这对新手很友好,但对网络要求高,而且按需安装有时会打断编译节奏。
很多 Windows 用户纠结 MiKTeX 和 TeX Live。我的建议很简单:如果你是写论文、投期刊、长期用的,直接 TeX Live;如果你只是临时写个简历、模板,不想一开始就下两三个 GB,那 MiKTeX 在线安装也够用。但要注意,MiKTeX 的历史兼容性不如 TeX Live 稳定,有些期刊模板在两者上的表现有细微差别。
2.2 安装包体积和更新策略带来的实际影响
TeX Live 完整安装包大概 5 到 7 个 GB(不同年份略有差异),但里面有大量你可能永远不会用的非中英文语言支持、实验性包、文档源码。好在安装时可以选择方案(scheme),最常见的是scheme-small或scheme-medium,装出来只有一两 GB,日常写中英文论文绰绰有余。后期缺什么包,用 tlmgr 补装即可。
我之前帮人排查编译问题,发现很多人卡在一个奇怪的宏包报错上。原因就是当年图快装了个精简版,宏包不全。所以从下载阶段就建议选 complete 方案,虽然大,但能少折腾 90% 的“缺少宏包”问题。硬盘不是十年前那个状态了,多花 3 GB 换几年的舒坦,非常划算。
版本上,TeX Live 每年四月份左右发布新版(比如 2024、2025),下载时认准年份目录,不要下那些几年前的版本。旧版本本身能跑,但宏包和字体支持会落后,遇到新模板可能报错。
3. Windows 上完整安装 TeX Live 的实操记录
3.1 镜像站下载的正确姿势
官方站点 tug.org 的下载经常慢到让人怀疑人生。我都直接走国内高校镜像。清华 TUNA、中科大开源镜像都有texlive目录,下载速度稳定得多。
具体路径一般是:
https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/找到最近的年份目录(例如texlive2025.iso),把这个 ISO 镜像下载下来。这里我建议用 ISO 而不是在线安装器:一是镜像文件可以校验哈希,确保没下坏;二是你可以在多台电脑上复用同一份镜像;三是安装过程不依赖网络,少很多变数。
拿到 ISO 之后不需要烧录、不需要解压成特殊格式。Windows 10/11 直接双击就能挂载成一个虚拟光驱盘符,然后进入目录找install-tl-windows.bat。macOS 和 Linux 上找install-tl这个可执行脚本。
3.2 安装过程详细走一遍
双击install-tl-windows.bat之后,会弹出一个命令行窗口和图形化向导界面。注意,它默认路径是C:\texlive\2025,这个路径不建议去改到中文目录下,也别塞进 Program Files——后面高权限问题和路径兼容问题会让你很头疼。就保持默认英文路径最省事。
安装选项里,scheme 选择full scheme,如果不想装那么多,可以考虑medium scheme,但既然都来装了,我强烈建议直接 full。文件夹结构选默认。点击“安装”之后就是等待,大约需要 10 到 40 分钟不等,取决于你的磁盘速度。这个过程中别关电脑,也别强制终止。
装完以后,安装程序通常会帮你把C:\texlive\2025\bin\windows加到系统 PATH。但一定要亲自验证一下,因为有些旧版或权限问题会导致这一步没生效。验证方法:
latex --version xelatex --version tlmgr --version如果哪个命令提示“不是内部或外部命令”,说明 PATH 没配上或配置没生效。重新打开一个新的终端窗口再试,还不行就手动去系统环境变量里加路径。
3.3 安装目录和几个重要工具链
装完后你会在bin\windows下看到一大堆 exe。别被吓到,实际日常最常用的就是这几个:
xelatex.exe:XeTeX 引擎驱动,中文排版首选。pdflatex.exe:老牌编译引擎,不支持直接使用系统字体,处理中文比较麻烦。latexmk.exe:一个脚本工具,自动判断需要跑几遍编译,写论文时少手动折腾很多。tlmgr.exe:宏包管理器,用来更新和安装宏包。
注意:从这里开始,你就和 CTeX 这种老旧套件说再见了。CTeX 时代的
CTeX 字体和gbk2uni技巧,在 XeLaTeX + ctex 宏包方案下已经完全没必要。
4. macOS 上安装 MacTeX 的要点和避坑
4.1 直接下 pkg 安装包
用 macbook 写论文的同学,别想着从源码编译 TeX Live 了,直接去 MacTeX 官网下 .pkg 文件。下载时尽量从国内镜像加速,否则官方服务器在高峰期可能很慢。
双击 pkg,一路“继续”就能装完。MacTeX 会把 TeX Live、TeX Live Utility、LaTeXiT 等一堆工具一起装进/usr/local/texlive。这个前缀路径比较特殊,但在 mac 上是官方支持的,不用改。
装完之后验证一下终端里能不能跑xelatex:
xelatex --version如果提示命令找不到,可能是 shell 的 PATH 没扫到/usr/local/texlive/<年份>/bin/universal-darwin,在~/.zshrc里加一行 export PATH 即可。
4.2 macOS 上的字体和中文支持
macOS 用户一个天然优势是系统自带一大堆漂亮的中文字体:宋体-简、黑体-简、苹方等。用 XeLaTeX 配合 ctex 宏包时,直接在文档里指定fontset=macnew或fontset=mac,系统就能自动匹配字体,不需要额外安装字体配置文件。
这一点是 Windows 用户要羡慕的地方。Windows 上通常需要配置中易宋体或手动指定字体路径。当然,现在用 ctex 宏包默认fontset=windows也能自动处理,但偶尔遇到模板强制调用某些字体名称时,还是 mac 端更顺滑。
5. 配一个高效的 LaTeX 写作环境:VSCode + LaTeX Workshop
5.1 为什么选 VSCode 而不是 TeXworks
安装完成发行版之后,你还需要一个编辑器。TeX Live 自带的 TeXworks 太简陋了,写长文档体验很差。现在社区主流选择是 Visual Studio Code(简称 VSCode)加 LaTeX Workshop 插件,这套组合免费、跨平台、代码高亮、自动补全、编译工具可视化,几乎成了“标准答案”。
VSCode 本身是一个通用编辑器,你需要单独装扩展。插件市场里搜LaTeX Workshop,作者是 James Yu,下载量最大。装完这个插件,它就自动识别 TeX Live 的安装路径,你打开 .tex 文件就能编译,基本零配置。
5.2 我的 settings.json 配置参考
虽然零配置能跑,但为了更好的体验,我一般会在 VSCode 的用户设置里加一段自定义配置。这样能实现保存即编译、正向同步、反向定位等功能。
{ "latex-workshop.latex.autoBuild.run": "onSave", "latex-workshop.latex.recipe": [ { "name": "xelatex", "tools": ["xelatex"] }, { "name": "xelatex -> bibtex -> xelatex*2", "tools": ["xelatex", "bibtex", "xelatex", "xelatex"] } ], "latex-workshop.latex.tools": [ { "name": "xelatex", "command": "xelatex", "args": [ "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "%DOC%" ] } ], "latex-workshop.view.pdf.viewer": "tab", "latex-workshop.synctex.afterBuild.enabled": true }这里面的%DOC%是 LaTeX Workshop 的占位符,代表当前打开的 .tex 主文件。-synctex=1用于生成同步索引,方便你在 PDF 和源码之间跳转。-interaction=nonstopmode是让编译过程出错时不要停在交互提示上,直接结束,避免 VSCode 终端卡死。
5.3 正反向搜索:写论文的效率利器
VSCode 里的 LaTeX Workshop 支持 SyncTeX。按住Ctrl/Cmd + 点击PDF 预览中的位置,可以跳转到对应源代码;在源码里Cmd+Ctrl+J(macOS 上 Mac 用户是这样的),可以反跳到 PDF 对应位置。我用这个功能改论文时最快,省下大量来回滚屏的时间。
不过这整套配置都依赖一个前提:你的 LaTeX 发行版安装正确,并且命令行能直接跑xelatex。很多人配置完 VSCode 报错“Recipe terminated with fatal error”,回头一看,其实是xelatex没进 PATH。这也就是为什么我把“验证安装”放在这么靠前的位置。
6. 安装之后立刻要会的三件事:图片、符号和表格换行
6.1 插入图片的正确方式
热搜里有一个高频词是“latex插入图片”,这个确实很多人一上来就卡住。LaTeX 插入图片不是 Markdown 那样就完事,它需要你在导言区引入 graphicx 宏包,然后使用 figure 环境。基础写法是这样:
\documentclass{article} \usepackage{graphicx} \begin{document} \begin{figure}[htbp] \centering \includegraphics[width=0.8\textwidth]{figures/flowchart.png} \caption{系统流程图} \label{fig:flowchart} \end{figure} \end{document}这里[htbp]是浮动位置参数:h 表示 here,t 表示 top,b 表示 bottom,p 表示单独一页。我习惯写[htbp],让 LaTeX 自己决定最合理的浮动位置。图片文件路径尽量用相对路径,统一放在figures子目录里,别放中文路径下。
想控制图片大小,width=0.8\textwidth是最常用的写法,意思是“占当前行宽的 80%”,比直接写scale=0.5更稳定。模板里经常还需要 subfigure 排并排图片,那需要引入subcaption宏包。
6.2 数学符号表和特殊符号
另一个高频词是“latex符号大全”。新手写公式,最痛苦的就是不知道某个符号用什么命令。我的建议是不要硬背,安装发行版后系统自带一份symbols-a4.pdf,一般在 TeX Live 安装目录下的doc或者 CTAN 上有。这份文档把所有 LaTeX 内置符号按主题分组列出来,查起来非常方便。
常用的数学符号给你列几个,先应急:
- 希腊字母:
\alpha、\beta、\gamma、\delta、\epsilon - 上下标:
x^2、a_i、e^{i\pi} - 分式:
\frac{分子}{分母} - 求和:
\sum_{i=1}^{n} - 积分:
\int_{a}^{b} - 无穷:
\infty - 右箭头:
\rightarrow - 左小括号:直接打
(就行,很多人被“左小括号 latex 代码”这个词误导,其实中文括号和英文括号在 LaTeX 中是不同的,英文括号(不需要转义,直接输入即可
特殊字符方面,%、&、#、_、{、}这些在 LaTeX 中有特殊含义,想原样输出需要在前面加反斜杠转义:\%、\&、\#、\_、\{、\}。我见过很多人投稿时忘了转义%,导致整段注释消失还找不到原因。
6.3 表格自动换行的问题
LaTeX 表格默认不换行,单元格内容长了会直接溢出页面。很多人搜“latex表格自动换行”,其实解决方案很简单:使用p{宽度}列类型而不是l/c/r。例如:
\begin{tabular}{|p{3cm}|p{6cm}|} \hline 项目名称 & 详细说明 \\ \hline 方案A & 这是一段很长的说明文字,超过 6cm 宽度后会自动换行,不会再溢出。 \\ \hline \end{tabular}如果你想让文本自动适配列宽,不想手动量,可以用tabularx宏包,配合X列类型自动分配剩余宽度。这是我现在写表格的首选方案。
\usepackage{tabularx} ... \begin{tabularx}{\textwidth}{|l|X|} \hline 项目名称 & 详细说明 \\ \hline 方案A & 自动换行的说明文字。 \\ \hline \end{tabularx}还有一个常见问题是表格整体太宽,超过版心宽度,有经验的用户会建议用\resizebox{\textwidth}{!}{...}把表格缩小,但注意这样会改变字号,发表论文时有些期刊不允许。所以能调整列内容就尽量调整内容,resizebox只适合内部报告和简历这类场合。
7. 安装配置中的常见问题与排查实录
安装配置这条路,我走得太多了。以下是我这些年遇到的高频故障,按出现概率排序,每一条都附上排查思路。
7.1 编译报错:xelatex 不是内部或外部命令
这个问题 90% 出在 PATH 没配好。你说自己安装成功了,但 VSCode 就是报这个错。验证方法很简单:
where xelatexWindows 下这个命令会列出 xelatex 的路径。如果提示找不到,就需要手动去系统环境变量添加 TeX Live 的 bin 目录,然后重启 VSCode 和终端。加上之后再用新的终端窗口验证一次,因为旧窗口不会自动刷新环境变量。
macOS 用户出现同样问题,多半是 shell 缓存问题,运行hash -r刷新一下,或者重新打开终端。
7.2 LaTeX 报错:! LaTeX Error: File `xxx.sty' not found
这个情况如果出现在安装完整版 TeX Live 之后,通常是你引用了某个未安装的宏包,或者你的 LaTeX 发行版是精简版。解决思路:
- 先确认宏包名有没有写错(大小写敏感)。
- 用 tlmgr 安装缺失的宏包:
tlmgr install xxx- 安装后刷新格式文件:
fmtutil-sys --all其实完整版 TeX Live 已经覆盖了 95% 常见宏包,这个报错在完整版里出现得很少。所以你看到它,基本可以回头检查一下自己是不是装了什么精简版。
7.3 中文显示乱码或编译不通过
写中文文档一定用 XeLaTeX 或者 LuaLaTeX,不要用 pdfLaTeX。同时文档里加上 ctex 宏包:
\documentclass[UTF8]{ctexart}如果你坚持用article文档类,可以在导言区加\usepackage{ctex}。出现乱码时,先检查 .tex 文件保存的编码格式是不是 UTF-8,不是的话改成 UTF-8 再编译。
\documentclass{article} \usepackage[UTF8]{ctex}不要再用 GBK 编码了,也不要再折腾 CTeX 旧套件。CTeX 那个时代已经过去了。
7.4 VSCode 配置 LaTeX 时终端输出乱码或报错无法解析
VSCode 的 LaTeX Workshop 默认会把编译输出解析成问题面板。但有时你配置了自定义 recipe,输出里带了一些特殊字符,VSCode 解析不出来。处理方法是去掉 recipe 里的重复选项,也可以把默认编译器设置成 xelatex,别用默认的 pdflatex。
"latex-workshop.latex.recipe.default": "xelatex"另一个常见坑:如果你同时装了 Strawberry Perl 或者其他 TeX 发行版,PATH 里可能有多个 perl.exe 或 latex 相关程序,VSCode 叫错了对象。清理环境变量,保留一个 TeX Live 的 bin 路径就好。
7.5 编译卡住不动或者反复重建
有时候你写完一段文字,保存后 VSCode 自动编译,但 PDF 预览一直没有刷新。多数原因是 latexmk 在等待某个文件锁。解决手段是先关掉 PDF 预览标签页,再重新编译。或者删除编译产生的临时文件(.aux、.bbl、.blg 等),重新编译一次。
如果项目里同时存在多个 .tex 文件,LaTeX Workshop 可能会选错“主文件”。你需要在 .tex 文件第一行加上% !TEX root = 主文件.tex或者在 VSCode 里右键设置当前文件为根文件。
7.6 Word 的 LaTeX 公式无法正常显示
这个热搜词比较特殊,它不是 VSCode 的问题,而是 Office 的“LaTeX 语法输入”功能。Word 2016 之后自带一个“LaTeX 语法”模式,可以在公式框里输入类 LaTeX 命令。如果你发现输入的命令不生效,先检查:
- 是否为最新版 Office(内存公式支持依赖于较新版本)。
- 是否在“公式工具”选项卡中启用了 LaTeX 语法。
- 注意 Word 只支持 LaTeX 语法的一个子集,很多宏包命令它不认识。
这个功能适合简单的上下标和分式,复杂的论文排版还是老老实实回 LaTeX 主战场。
8. 我的个人体会与进一步建议
做一个长期写技术文档和论文的人,我用 LaTeX 大概有七八年了。从最开始的 CTeX 到后来的 TeX Live + VSCode,中间踩过的坑不计其数。如果让我给刚开始接触 LaTeX 的人一个最核心的建议,那就是:环境安装这件事不要贪快、不要图精简、不要用乱七八糟的绿色版。花半小时下一份完整的 TeX Live,后面省下的时间绝对比这半小时多得多。
安装完成之后,我强烈建议你别急着写大论文,先拿一个小文档跑通“编辑 → 编译 → 预览 → 改错”的完整闭环。小文档的标题、章节、公式、图片、表格全部跑通之后,你再换论文模板也心里有底。
关于继续扩展的方向,我现在常用的还有 beamer 做幻灯片、TikZ 画示意图、biblatex 管理文献。这些并不是安装教程里的内容,但你既然把 LaTeX 装好了,下一步就大胆折腾吧。还有一个特别实用的小技巧:把常用的模板和配置放在一个云端备份目录里,换电脑之后同步下来,配合 TeX Live 的安装包,半小时就能恢复完整工作流。希望这篇 LaTeX 下载与安装的记录,能帮你少走我当年走过的弯路。