LaTeX之四:如何兼容中文(上手中文简历和中文论文)、在win/mac上安装新字体。

改成中文版

如果你已经修改了.cls文件和主文档,但编译后的PDF仍然显示英文版本,可能有以下几个原因:

  1. 编译器问题:确保你使用的是XeLaTeX或LuaLaTeX进行编译,因为它们对Unicode和中文支持更好。你可以在你的LaTeX编辑器中选择编译器。

  2. 缓存问题 :有时候LaTeX编辑器会缓存旧的编译结果。尝试清理项目中的辅助文件(如.aux.log.out等),然后重新编译。

  3. 文件路径问题 :确保你修改的.cls文件和主文档是你正在编译的文件。如果你有多个相同名称的文件,可能会导致混淆。

  4. 编辑器设置问题:有些编辑器可能需要额外的设置来正确处理中文内容。

以下是一些具体的步骤来解决这些问题:

1. 确保使用XeLaTeX或LuaLaTeX编译

在你的LaTeX编辑器中,选择XeLaTeX或LuaLaTeX作为编译器。例如,在TeXShop中,你可以在菜单栏中选择Typeset -> XeLaTeX。在Overleaf中,你可以在项目设置中选择编译器。

2. 清理辅助文件

删除项目目录中的所有辅助文件(如.aux.log.out等),然后重新编译。大多数LaTeX编辑器都有一个"清理"或"清除辅助文件"的选项。

3. 确认文件路径

确保你修改的.cls文件和主文档是你正在编译的文件。你可以通过以下步骤确认:

  • 打开你修改的.cls文件和主文档,确保它们是你期望的文件。
  • 在主文档中添加一些独特的标记(如注释或简单的文本),然后保存并编译,看看这些标记是否出现在PDF中。

4. 编辑器设置

确保你的编辑器设置正确。例如,在TeXShop中,你可以在菜单栏中选择TeXShop -> Preferences,然后在Engine选项卡中设置默认编译器为XeLaTeX或LuaLaTeX。

示例

假设你使用的是XeLaTeX编译器,以下是一个完整的示例:

修改后的.cls文件(resume.cls)
latex 复制代码
% 启用自定义颜色
\RequirePackage[usenames,dvipsnames]{xcolor}

% 移除段落缩进
\usepackage[parfill]{parskip}

% 启用表格列的粗体
\usepackage{array}

% 启用if-then-else语句
\usepackage{ifthen}

% 取消页码
\pagestyle{empty}

% 用于创建可缩放的符号
\usepackage{scalerel}
\usepackage{bbding,pifont} % 用于创建自定义的项目符号符号

% 添加中文支持
\RequirePackage{ctex}
修改后的主文档(resume.tex)
latex 复制代码
\documentclass{resume}

% 设置文档的边距
\usepackage[left=0.75in,top=0.6in,right=0.75in,bottom=0.6in]{geometry}

% 颜色和超链接包
\usepackage{xcolor}
\usepackage{hyperref}

% 脚注和边距调整包
\usepackage{footnote}
\usepackage{changepage}

% Fontawesome 图标包
\usepackage{fontawesome}

% Tabularx 包用于自定义表格
\usepackage{tabularx}

% 定义 navyblue 颜色
\definecolor{navyblue}{RGB}{0,54,123}

% 添加中文支持
\usepackage{ctex}

% 设置中文字体
\setCJKmainfont{SimSun} % 设置中文主字体为宋体(SimSun),你可以根据需要更改为其他字体

% 自定义命令和环境
% ...(保持原有的自定义命令和环境定义)

% 设置名字为 navyblue 颜色
\name{\color{navyblue} Carl Johnson (CJ)}

\begin{document}

\printPersonalInfo{
  \personalInfo{\tag{Residence/domicile}\info{113, Groove Street}}
  \personalInfo{\tag{E-mail}\info{pleasedonotcontactme@gmail.com} \infoSeparator\tag{Telephone number}\info{+1-202-555-0100}}
  \personalInfo{\tag{Place of birth}\info{Ariccia, Italy} \infoSeparator\tag{Date of birth}\info{08-11-1968}}
}

% 教育部分
\begin{rSection}{教育背景}

    % 硕士学位条目
    \begin{rSubsectionNoBullet}{\bf Memeology 和 Unicorn Analytics 硕士学位}{Faber College}{硕士学位项目}{2019年2月 - 2020年4月}
        \italicitem{以优异成绩毕业}
        \italicitem{论文题目:深度学习预测下一次脱欧:独角兽 vs. 白色行者}
    \end{rSubsectionNoBullet}
    
    % 学士学位条目
    \begin{rSubsectionNoBullet}{\bf Absurd Robotics Engineering 学士学位}{Westeros University}{学士学位项目}{2016年5月 - 2018年8月}
        \italicitem{最终成绩:9001/10000}
        \italicitem{毕业设计:使用火焰喷射器制作吐司的机器人设计与实现}
    \end{rSubsectionNoBullet}
    
    % 高中毕业条目
    \begin{rSubsectionNoBullet}{\bf 高中毕业证书}{Rydell High School}{高中毕业项目}{2011年6月 - 2015年5月}
        \italicitem{最终成绩:7/7}
        \italicitem{毕业项目:应用机器学习技术预测学生基于其表情包消费习惯的失败率}
    \end{rSubsectionNoBullet}

\end{rSection}

% 工作经验部分
\begin{rSection}{工作经验}

    % 第一份工作经验条目
    \begin{rSubsection}{Dank Memes Inc.}{2019年9月 - 2021年9月}{"荒诞机器学习"部门主管}{意大利 Ariccia}
        \item 开发了下一代表情包的最先进预测模型。
        \item 应用机器学习技术优化独角兽安装的激光系统。
        \item 简化了内部表情包生成流程。
    \end{rSubsection}
    
    % 第二份工作经验条目
    \begin{rSubsection}{Viral News Robotics Laboratory (VNRL)}{2019年3月 - 2019年7月}{机器人喜剧演员实习生}{弗吉尼亚 Fries}
        \item 设计了一款不断问"酒在哪里?"的机器人提利昂·兰尼斯特。
    \end{rSubsection}
    
    % 第三份工作经验条目
    \begin{rSubsection}{Library of Alexandria 2.0}{2017年1月 - 2018年4月

一般步骤

LaTeX 默认不支持 Unicode 字符,因此在你的文档中使用 Unicode 字符(例如 山)时会报错。要解决这个问题,你可以使用 xeCJK 包,它允许在 LaTeX 文档中使用 Unicode 字符。

以下是如何修改你的 LaTeX 文档以支持 Unicode 字符的步骤:

在LaTeX文档中加入中文支持需要一些额外的包和配置。以下是一个基本的步骤指南,帮助你在现有的LaTeX文档中加入中文支持:

安装必要的包:

ctex:这是一个专门为中文设计的LaTeX宏包,能够很好地处理中文字符。

xeCJK:这是一个基于XeLaTeX的宏包,能够处理中日韩字符。

修改文档类和导言区:

使用ctex包或者xeCJK包来处理中文字符。

如果你选择使用xeCJK,你需要使用XeLaTeX或LuaLaTeX进行编译。

报错:

报错"Undefined control sequence"通常是由于使用了不支持的命令或包。根据你的错误信息,问题可能出在xeCJK包的使用上。为了使用xeCJK包,你需要确保以下几点:

使用XeLaTeX或LuaLaTeX进行编译:xeCJK包需要XeLaTeX或LuaLaTeX编译器,而不是传统的pdfLaTeX编译器。

正确安装字体:你需要确保系统中安装了你指定的中文字体,例如SimSun(宋体)。

列出系统的字体和安装新字体

使用系统中已有的中文字体

如果你不确定系统中有哪些中文字体,可以使用fc-list命令来列出系统中所有可用的字体。打开终端并运行以下命令:

bash 复制代码
fc-list :lang=zh

这将列出所有支持中文的字体。选择一个你系统中已有的字体,并在LaTeX文档中使用它。

如下:

那么我可以使用的字体就有:Xingkai SCYuppy SC

要在系统中安装SimHei(黑体)和SimSun(宋体)字体,你可以按照以下步骤进行操作。这里假设你使用的是Windows或macOS系统。

在Windows上安装SimHei和SimSun字体

  1. 下载字体文件

    • 你可以从互联网上下载SimHei和SimSun字体文件。通常这些字体文件的扩展名为.ttf.ttc
    • 例如,你可以从以下链接下载:
  2. 安装字体

    • 下载完成后,找到下载的字体文件。
    • 右键点击字体文件,然后选择"安装"。
    • 安装完成后,字体将会出现在系统的字体列表中。

在macOS上安装SimHei和SimSun字体

  1. 下载字体文件

    • 你可以从互联网上下载SimHei和SimSun字体文件。通常这些字体文件的扩展名为.ttf.ttc
    • 例如,你可以从以下链接下载:
  2. 安装字体

    • 下载完成后,找到下载的字体文件。
    • 双击字体文件,然后在弹出的窗口中点击"安装字体"。
    • 安装完成后,字体将会出现在系统的字体列表中。
相关推荐
逐梦苍穹2 天前
速通LoRA:《LoRA: Low-Rank Adaptation of Large Language Models》全文解读
人工智能·语言模型·自然语言处理·lora·微调·论文
阿里云大数据AI技术3 天前
【EMNLP2024】面向长文本的文视频表征学习与检索模型 VideoCLIP-XL
人工智能·阿里云·论文·emnlp
Mephostopheles7 天前
0基础读顶会论文—流程即服务(PraaS):通过无服务器流程统一弹性云和有状态云
论文
诸神缄默不语7 天前
LaTeX中的\pdfoutput命令:输出PDF
pdf·latex·\pdfoutput·pdflatex
spssau7 天前
13类高频数据分析方法分类汇总
大数据·数据分析·论文·spss·spssau
程序员鱼皮8 天前
刚毕业,去做边缘业务,还有救吗?
计算机·程序员·互联网·求职·简历
qq26215424099 天前
挂名副主编评职称能用吗?
论文·教育·独著·出书
Mephostopheles9 天前
0基础读顶会论文—Kappa:一种用于无服务器计算的编程框架
论文
扛着仪器去爬山12 天前
国自然基金项目撰写技巧
人工智能·chatgpt·论文·sci·国自然·基金