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

推荐订阅源

Martin Fowler
Martin Fowler
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
A
About on SuperTechFans
Apple Machine Learning Research
Apple Machine Learning Research
The Register - Security
The Register - Security
Vercel News
Vercel News
H
Hackread – Cybersecurity News, Data Breaches, AI and More
人人都是产品经理
人人都是产品经理
MyScale Blog
MyScale Blog
云风的 BLOG
云风的 BLOG
博客园_首页
U
Unit 42
T
Tailwind CSS Blog
G
GRAHAM CLULEY
F
Full Disclosure
V
Vulnerabilities – Threatpost
T
Tenable Blog
月光博客
月光博客
P
Privacy & Cybersecurity Law Blog
P
Privacy International News Feed
K
Kaspersky official blog
Scott Helme
Scott Helme
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
N
News and Events Feed by Topic
T
The Exploit Database - CXSecurity.com
N
News and Events Feed by Topic
有赞技术团队
有赞技术团队
Recent Commits to openclaw:main
Recent Commits to openclaw:main
L
LINUX DO - 最新话题
Recorded Future
Recorded Future
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Help Net Security
Help Net Security
The GitHub Blog
The GitHub Blog
Cisco Talos Blog
Cisco Talos Blog
SecWiki News
SecWiki News
P
Proofpoint News Feed
Security Latest
Security Latest
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
罗磊的独立博客
S
Security Affairs
M
MIT News - Artificial intelligence
L
LINUX DO - 热门话题
美团技术团队
Simon Willison's Weblog
Simon Willison's Weblog
T
Threat Research - Cisco Blogs
Stack Overflow Blog
Stack Overflow Blog
Forbes - Security
Forbes - Security
Hugging Face - Blog
Hugging Face - Blog
博客园 - Franky
V
Visual Studio Blog

博客园 - 立体风

github上关于CMD高级命令知识 CMD命令启动模板 brainstorming SKILL技能完整中文翻译版 更新 claude code 官方插件市场 Sigmoid 函数的数学起源与定义详解 路径在powershell 配置文件 Profile 和 环境变量 PATH 的区别 当AI构建自身 nana gui库的回调函数 Nana c++ gui库的对话框函数 -- 理解 nana 的运行机制 介绍 MSVC 的编译命令/ Zc CMake 变量 ${CMAKE_CURRENT_BINARY_DIR} 学习 nana c++ 库 (一) AutoHotkey v2 的源码学习路线 Visual Studio 中行号右边的黄色竖条 大O表示法推导 allocate 中为什么有两个L vs的cl.exe 编译器 c++20 基本配置 IT高频词 address Python Install Manager (PIM,官方安装管理器)简介 debian 中 contrib 软件仓库 debian 版本号及 apt 命令对软件的区分 sysctl的历史及常用命令 极限运算的法则 XeLaTeX 的基本用法 XeLaTeX 介绍 为什么梯度向量 ∇f 指向函数值增长最快的方向 三角函数的余弦定理的证明 向量点积的几何定义的证明 方向导数公式的证明 仿射函数的定义及用途 凸集的定义及证明 在 LaTeX 公式中处理英文单词 梯度下降法 (Gradient Descent)的数学原理。 梯度下降法简介 向量形式表达最小二乘法 线性回归模型的核心数学表达式 risidual 音标和本义 coefficients的音标及本义(线性模型)
TeX 的 ctex 宏包的基本用法
立体风 · 2025-09-08 · via 博客园 - 立体风

ctex 宏包是为处理中文 LaTeX 文档而设计的宏包,它极大地简化了中文排版所需的各种复杂配置。使用 ctex,你可以告别繁琐的字体和编码设置,轻松地排版出高质量的中文文档。

以下是 ctex 宏包的基本用法和一些常用功能。


1. 文档类型:ctexartctexrepctexbook

ctex 宏包提供了自己的文档类,这些文档类是标准 LaTeX 文档类(articlereportbook)的中文增强版。使用这些文档类是使用 ctex 最简单、最推荐的方式。

  • ctexart: 对应 article,用于短篇幅论文或文章。
  • ctexrep: 对应 report,用于较长的报告或学位论文。
  • ctexbook: 对应 book,用于书籍排版。

基本用法:

只需将文档的类型声明从 \documentclass{article} 改为 \documentclass{ctexart}

\documentclass[UTF8]{ctexart} % 建议始终加上 UTF8 选项
% ... 文档内容 ...

2. 作为宏包使用:\usepackage{ctex}

如果你需要在一个已有的文档中使用 ctex 的功能(例如,在自定义的文档类中),你也可以将它作为一个宏包来加载。

基本用法:

在文档导言区(\documentclass\begin{document} 之间)加入以下命令:

\documentclass{article}
\usepackage[UTF8]{ctex} % 推荐使用 XeLaTeX,并加上 UTF8 选项

\begin{document}
% ... 文档内容 ...
\end{document}

3. ctex 的核心功能

a. 中文支持

这是 ctex 最基本也是最重要的功能。它自动处理中文编码字体选择字号大小,让你能够直接在文档中输入中文而无需额外配置。

示例:

\section{你好,世界!}
这是一个使用 ctex 宏包的中文文档。
你好,中文排版!

b. 自动调整中西文混排间距

在中文和英文或数字混排时,ctex 会自动在它们之间插入一个微小的间距,以提高可读性,这符合中文排版的习惯。

示例:

我们可以轻松地在中文中插入 English Words,数字 12345,以及数学公式 $E=mc^2$。

c. 自动设置字体

ctex 宏包会根据你的操作系统自动选择合适的字体。在 Windows 上,它可能会默认选择“宋体”、“黑体”等。如果你想手动指定字体,可以使用 \setmainfont 命令(需使用 XeLaTeX 编译器)。

示例:

\documentclass[UTF8]{ctexart}
\usepackage{fontspec} % XeLaTeX 专用字体宏包

\setmainfont{思源宋体} % 设置正文字体为思源宋体
\setsansfont{思源黑体} % 设置无衬线字体为思源黑体
\setmonofont{思源等宽} % 设置等宽字体为思源等宽

\begin{document}
  这是宋体。{\sffamily 这是黑体。} {\ttfamily 这是等宽字体。}
\end{document}

d. 中文化命令

ctex 宏包将一些常用的 LaTeX 命令进行了中文化,让文档更符合中文习惯。

功能 LaTeX 原生命令 ctex 中文命令
\chapter{...} \chapter{...}(中文标题)
\section{...} \section{...}(中文标题)
目录 \tableofcontents \tableofcontents(标题自动变为“目录”)
摘要 \begin{abstract}...\end{abstract} \begin{abstract}...\end{abstract}(标题自动变为“摘要”)

4. 编译方法

使用 ctex 宏包的文档,强烈推荐使用 XeLaTeX 编译器进行编译。因为 XeLaTeX 原生支持 UTF-8 编码和系统字体,这与 ctex 的设计理念完美契合。

你可以使用 pdflatex 编译器,但在处理字体和编码上可能会遇到一些问题。

总结,如果你需要编写中文 LaTeX 文档,ctex 宏包是不可或缺的。它通过自动化的配置本地化的命令,让你能够专注于文档内容,而不是繁琐的技术细节。