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

推荐订阅源

H
Hackread – Cybersecurity News, Data Breaches, AI and More
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
V
V2EX
T
The Blog of Author Tim Ferriss
腾讯CDC
Hugging Face - Blog
Hugging Face - Blog
雷峰网
雷峰网
爱范儿
爱范儿
GbyAI
GbyAI
H
Help Net Security
I
InfoQ
罗磊的独立博客
酷 壳 – CoolShell
酷 壳 – CoolShell
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
人人都是产品经理
人人都是产品经理
J
Java Code Geeks
Microsoft Security Blog
Microsoft Security Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
N
Netflix TechBlog - Medium
Last Week in AI
Last Week in AI
宝玉的分享
宝玉的分享
云风的 BLOG
云风的 BLOG
Project Zero
Project Zero
P
Privacy & Cybersecurity Law Blog
A
Arctic Wolf
Know Your Adversary
Know Your Adversary
G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tor Project blog
V
Vulnerabilities – Threatpost
Y
Y Combinator Blog
WordPress大学
WordPress大学
V
Visual Studio Blog
博客园_首页
G
GRAHAM CLULEY
K
Kaspersky official blog
T
Tailwind CSS Blog
T
Threat Research - Cisco Blogs
博客园 - Franky
D
Docker
Security Latest
Security Latest
I
Intezer
有赞技术团队
有赞技术团队
Application and Cybersecurity Blog
Application and Cybersecurity Blog
博客园 - 【当耐特】
B
Blog RSS Feed
T
The Exploit Database - CXSecurity.com
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻

博客园 - 立体风

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 宏包是不可或缺的。它通过自动化的配置本地化的命令,让你能够专注于文档内容,而不是繁琐的技术细节。