标签 xeCJK 下的文章

本地配置 texlive + vscode

1. 背景

随着 overleaf 免费版的编译时间不断缩小,遇到过长的文本可能出现无法编译超时的情况。于是考虑在本地
配置 texlive 进行编译。由于我使用 vscode 较多,因此并没有下载 texworks, 而是在 vscode 上进行配置,同时
可以享受到 vscode 的 AI 集成等功能。

本机环境为 windows11。

2. 安装 texlive

首先前往 Index of /CTAN/systems/texlive/Images/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

出现如图所示的页面,texlive.iso 或 texlive2025.iso 进行下载即可。

下载时间十几分钟左右,需耐心等待。

接着在本地解压,得到

选择 install-tl-windows.bat 进行安装,即可。可以选择不安装前段 texworks。

3. 配置 vscode

首先安装 vscode 的 latex 插件,一般选择为 LaTeX Workshop。

\documentclass{article}
\usepackage{fontspec}
\usepackage{xeCJK}
\setCJKmainfont{SimSun}
\usepackage{geometry}    % 调整页边距
\usepackage{amsmath}     % 数学公式支持
\usepackage{graphicx}    % 插入图片


% 2. 基础设置
\geometry{a4paper, margin=1in} % A4纸,1英寸页边距
\title{LaTeX中文文档示例}       % 文档标题
\author{测试用户}               % 作者
\date{\today}                   % 日期(\today表示当前日期)

% 3. 文档开始
\begin{document}
\maketitle % 生成标题(包含标题、作者、日期)

% 正文段落
这是一段中文正文示例。LaTeX擅长处理复杂排版,尤其在数学公式、学术引用和长文档结构上优势明显。

% 无序列表(可用于罗列要点)
\begin{itemize}
    \item 优点1:排版美观,格式统一
    \item 优点2:数学公式支持完善(如下方示例)
    \item 优点3:跨平台兼容,文档格式稳定
\end{itemize}

% 数学公式示例(两种常用形式)
% 1) 行内公式(嵌入正文):勾股定理 $a^2 + b^2 = c^2$
% 2) 独立公式(单独成行,自动编号):
\begin{equation}
    f(x) = \int_{-\infty}^{+\infty} e^{-t^2} dt = \sqrt{\pi}
\end{equation}

% 插入图片(需将图片文件放在同一目录,替换"test.jpg"为实际文件名)
\begin{figure}[h] % [h]表示优先将图片放在当前位置
    \centering % 图片居中
    \includegraphics[width=0.6\textwidth]{test.jpg} % 宽度设为页面60%
    \caption{图片示例(可修改为实际图片说明)} % 图片标题
    \label{fig:test} % 图片标签(用于后文引用)
\end{figure}



\end{document}

在 latex 中最麻烦的问题是中文字体的寻找,Windows 上的字体和你认为的名称可能有较大出入,因此会出现
字体未找到的错误。

这里采用 xeCJK,因为 ctex 的默认配置会找 SimHei 字体,而本机简黑字体可能名称不直接叫 SimHei。
故出现如图错误

若想使用 ctex 则需要将默认配置关闭,并重新配置字体。

\documentclass[fontset=none]{ctexart}
\setCJKmainfont{SimSun}
\begin{document}
你好,世界
\end{document}

那么我们如何在本机上找到我们需要的字体呢,这时候可以用到 powershell 中的 fc-list 命令,查找本机上所有字体。

我们可以看到,主要有两个 C:/WINDOWS/Fonts 和 H:/texlive/2025/texmf-dist/fonts 两个文件夹下的字体,
H:/texlive/2025/texmf-dist/fonts 是 texlive 自带字体,主要用于数学,西文等。
C:/WINDOWS/Fonts/ 是我们本机自带字体,我们将要在他的目录下寻找我们需要的中文字体。

当我们需要查找仿宋字体时,我们可以 fc-list | Select-String “song”, 得到如图结果!

这里的 STFangsong 就是我们需要的名称。

另一个问题则是 settings.json 的配置,我之前使用这位 https://zhuanlan.zhihu.com/p/624932249 博主的配置。但发现存在引用时,会发生无法二次编译的问题,于是进行了添加

{ "latex-workshop.latex.autoBuild.run": "onSave", "latex-workshop.showContextMenu": true, "latex-workshop.intellisense.package.enabled": true, "latex-workshop.message.error.show": false, "latex-workshop.message.warning.show": false, "latex-workshop.latex.tools": [ { "name": "latexmk_xelatex", "command": "latexmk", "args": [ "-xelatex", "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "-outdir=%OUTDIR%", "%DOCFILE%" ] } ], "latex-workshop.latex.recipes": [ { "name": "LaTeXmk (XeLaTeX)", "tools": ["latexmk_xelatex"] } ], "latex-workshop.latex.recipe.default": "LaTeXmk (XeLaTeX)", "latex-workshop.latex.clean.fileTypes": [ "*.aux", "*.bbl", "*.blg", "*.idx", "*.ind", "*.lof", "*.lot", "*.out", "*.toc", "*.acn", "*.acr", "*.alg", "*.glg", "*.glo", "*.gls", "*.ist", "*.fls", "*.log", "*.fdb_latexmk" ], "latex-workshop.latex.autoClean.run": "onFailed", "latex-workshop.view.pdf.viewer": "tab", "latex-workshop.view.pdf.autoReload.enabled": true, "latex-workshop.view.pdf.reloadOnStart.always": true, "latex-workshop.view.pdf.internal.synctex.keybinding": "double-click" } 

精简了一些指令,只使用 latexmk_xelatex 用于管理多次编译。

4. 引用

https://zhuanlan.zhihu.com/p/624932249


📌 转载信息
原作者:
lycx
转载时间:
2026/1/12 16:41:19