在使用在线 LaTeX 编辑器 Overleaf 撰写学术论文或简历时,许多新手会遇到一个令人崩溃的现象:只要在代码中输入中文字符,点击编译后,PDF 中的中文要么完全空白不显示,要么系统直接飙红报错。
导致这一问题的根本原因非常简单:Overleaf 默认使用的编译器是 pdfLaTeX,该编译器原生不支持直接渲染中文字符。
要彻底解决中文字体不显示与报错问题,只需完成两步核心配置:切换编译器与调用中文宏包。
![]()
这是最关键的一步,必须让系统底层使用支持 Unicode 字符的编译引擎。
在 Overleaf 编辑界面,点击左上角的 Menu(菜单) 按钮。
在滑出的左侧设置面板中,向下滚动找到 Settings(设置) 区域。
将 Compiler(编译器) 的下拉菜单从默认的 pdfLaTeX 修改为 XeLaTeX。
告诉编译器使用中文排版规则和默认中文字体。
在您的代码编辑区,找到 \documentclass{...} 与 \begin{document} 之间的区域(即导言区)。
添加以下一行代码:
\usepackage[UTF8]{ctex}
点击页面右上角绿色的 Recompile(重新编译) 按钮。此时所有的中文都会完美显示,报错全部消失。
如果您正在新建一个文档,不知道如何配置,请直接清空原文件中的所有代码,将以下基础模板复制进去,点击编译即可:
\documentclass[12pt,a4paper]{article}
% 必须引入中文支持宏包
\usepackage[UTF8]{ctex}
\title{Overleaf 中文排版测试}
\author{作者姓名}
\date{\today}
\begin{document}
\maketitle
\section{第一部分:中文测试}
这是一段中文测试文本。只要编译器设置为 XeLaTeX,且引入了 ctex 宏包,这里的中文就能正常显示,不会出现乱码或报错。
\end{document}
有些用户严格按照上述步骤修改了代码和编译器,但点击 Recompile 后依然提示红色的 Fatal Error。这通常是由以下两种特殊情况导致的:
Overleaf 的编译系统有时会“死记”之前的错误状态。即使你已经修复了代码,它仍在读取旧的错误缓存文件。
解决办法:点击绿色的 Recompile 按钮旁边向下的小箭头,在下拉菜单底部找到红色的垃圾桶图标 “Clear cached files”(清除缓存文件)。点击清除后,再次重新编译,系统就会按照正确的 XeLaTeX 引擎重新生成文件,报错瞬间解决。
有些学术期刊的模板(如 IEEEtran 模板)有极度严格的字体和格式限定,或者作者已经将第一行写成了 \documentclass{ctexart}(自带中文环境的文档类),却在下方重复调用 \usepackage{ctex},导致命令冲突。
解决办法:如果您使用的是 ctexart 或 ctexrep 文档类,无需再额外 \usepackage{ctex}。如果您使用的是英文期刊官方模板,建议保持原文档类不变,仅在导言区补充宏包即可。
上一篇
政府支持:大湾区大学 ,力争获批3个博士点