因为疫情在家中上课,作业提交都必须使用PDF。反正时间充裕,不如趁机回顾一下LaTeX的使用。

  之前一直用的是Vimtex,但是感觉还是不太方便,于是改用了Texpad。Texpad的强大之处在于它支持光速的实时预览。但是在配置Texpad支持中文的时候却踩了一万个坑,而且到现在还没有真正实现中文实时预览,明天再试试吧。

  下面进入正题,怎样在LaTeX中使用中文,或者说怎样让LaTeX支持中文?

  我发现了三个方法:


  第一种方法:

%! Tex program = xelatex
\documentclass{article}
\usepackage[UTF8, scheme = plain]{ctex}
\begin{document}
支持 XeLaTeX 编译,可以插入中文,不影响版式。
\end{document}

  这段代码的原理十分清楚,编译程序选择对中文支持较好的xelatex,具体文档可以看这里https://www.overleaf.com/learn/latex/XeLaTeX,简单的理解下,XeLaTeX是这家公司:overleaf旗下的一款用UTF-8码编码的tex引擎,而且支持更多更多的字体。这也是为什么他对中文支持更好而对比之下pdfLaTeX却经常因为字体报错的原因。接下来呢?我们使用一个包,这个包叫做ctex,包中有各种的排版样式,中文字体设置等等等等。ctex具体的使用方法还是参见文档。那么,有了合适的引擎-xelatex,合适的排版规范-ctex,支持中文不在话下。


  第二种方法:  

%! Tex program = xelatex\documentclass[UTF8]{ctexart}
\begin{document}
这是一个CTEX的utf-8编码例子,{\kaishu 这里是楷体显示},{\songti 这里是宋体显示},{\heiti 这里是黑体显示},{\fangsong 这里是仿宋显示}。
\end{document}

  这段代码过同样是调用了ctex包,在设置documentclass的时候,我们其实已经使用了ctex包。下面的{\songti ooxx}...等等,不难理解是 ctex包中,ctexart文档类型的特性!这样字体是不是也变化万千了。


  第三种方法:

%! Tex program = xelatex\documentclass{article}
\usepackage{xeCJK}
\setCJKmainfont{SimSun}
\begin{document}
中文 \LaTeX 示例。
\end{document}

  这段代码是XeCJK的文档中的。这里要解释一下CJK:即Chinese,Japanese,Korean。那么我们可以想见,XeCJK是和ctex属于一个档次的!那么我们为什么要使用XeCJK包,而不再使用ctex包呢?学校的readme科普了我一下:CTeX 套装最早是由中科院 Leo Wu(吴凌云)研究员开发、维护和发布的 TeX 发行版,它是应当时中文配置困难的背景(CCT、CJK 等)而诞生的,而现在的中文支持技术(xeCJK等)配置已非常简单;CTeX 套装自 2012 年 3 月 22 日发行 2.9.2.164 版本后,至今未更新,已不能适应当前 TeX 中文技术的发展,引用 CTeX 套装的开发之一刘海洋的话:CTeX 已经完成了它的历史使命。欧克,那么我们也应该识趣一点,以后不要再使用CTeX这个包了,拥抱XeCJK这个包。

  XeCJK的文档:https://www.ctan.org/pkg/xecjk  我看的时候,这个包更新于4天前,那么我们为什么不用这个活跃的包嘞~

  三种方法:个人推荐第三种,也是最新的一种。前两种使用方式因为调用长久未更新的ctex包而势必被淘汰(事实上有一种调用CJK包的中文排版方案,它早就被淘汰了)。相反,掌握了XeCJK,中文排版将会如虎添翼!  

怎样在LaTeX中使用中文相关推荐

  1. 解决 LaTeX 中的中文显示问题

    解决 LaTeX 中的中文显示问题 前提条件:.tex源文件使用UTF8编码方式保存 在此前提下,有四种推荐方法 方法1 使用 ctex宏包 头部使用 \documentclass{article} ...

  2. LaTeX中的中文处理方法

    LaTeX中的中文处理方法 在能够处理宽字节编码的xelatex出现之后,主要是用xelatex结合ctex宏包来处理中文. 以TexStudio举例. 打开设置. ①"构建"-& ...

  3. Latex中使用中文

    编码 使用任何一种语言,Latex都必须处理两个基本问题: - 将输入字节映射为所使用语言的字符 - 将字符映射为所使用字体的字形 使用xelatex可以帮助我们处理这些问题.对于xelatex,输入 ...

  4. Latex中处理中文

    下面我就给出一个处理中文的基本样例. \documentclass[a4paper]{article} \usepackage{CJK} \begin{document} \begin{CJK*}{G ...

  5. Latex学习笔记——latex中的中文处理办法

    latex中要使用中文排版首先要保证latex源文件的编码形式为UTF-8 其次还需要将构建命令设置为xelatex 然后有两种方法导入宏包: 第①种方法是直接将导言区引入的文档类改为\documen ...

  6. LaTeX中宋体中文无法加粗的情况

    1 致谢 感谢LaTeX科技排版工作室的帮助 链接如下: http://www.latexstudio.net/ 2 问题描述 最近在用LaTeX写硕士论文 遇到一个奇怪的问题 那就是宋体的中文无法加 ...

  7. figure字体 latex_如何在 Mac 下的 LaTeX 中使用中文字体?

    提供一个比较全的模板供参考,编译用xelatex: \documentclass[11pt,a4paper]{article} % \documentclass[11pt,a4paper]{repor ...

  8. Latex中如何使用中文?

    文章目录 Latex中如何使用中文? 环境 解决方案 解决方案一 解决方案二 解决方案三 参考 Latex中如何使用中文? 环境 Mac Os High Sierra + Texstudio 解决方案 ...

  9. 0001.Latex中中文双引号和单引号的写法

    如何在Latex或者Ctex中输入中文双引号or单引号? 在Latex中,查看Tab键上面的键,在英文状态下连续输入两个``,然后输入Enter键左边的单引号'',输入两次,也是英文状态下哦. 可以将 ...

最新文章

  1. mate 7 可以安装linux,centos7安装mate
  2. UIColor之【扩展:#FFFFFF -UIColor】
  3. RxJava系列6(从微观角度解读RxJava源码)
  4. 【PHP】文件写入和读取详解
  5. pat 乙级 1031 查验身份证(C++)
  6. 工业机器人用铸铁牌号_常用铸铁牌号
  7. python歌星大奖赛_在歌星大奖赛中,有10个评委为参赛选手打分,分数为1到100分。...
  8. IO多路复用之select全面总结(必看篇)
  9. sourceforge.net cvs sample
  10. jpa使用注解传递对象_注解(下)
  11. FRR BGP协议分析14 -- 静态路由的处理流程
  12. go 连接服务器 并存放图片_[本站大事件] 又更换服务器了 – 小文's blog
  13. 从零开始之uboot、移植uboot2017.01(三、lowlevel_init)
  14. 计算机科学 vs 计算机技术
  15. 数据研发工程师面试全过程(个人面试)
  16. ply补全为立方体_PLY格式文件具体解释
  17. c语言中符号是什么作用是什么,c语言中的符号|=是什么意思?
  18. 邵阳一中2021高考成绩查询,2021年邵阳高考最高分多少分,历年邵阳高考状元
  19. 《鱿鱼游戏》的深刻,在于足够肤浅
  20. NYOJ:458-小光棍数

热门文章

  1. MySQL安全性机制
  2. C语言小黄鸭-->函数()
  3. axure RP文件如何找回_AXURE教程:管理后台页面框架
  4. 手机PDF如何转成PPT?操作方法如何?
  5. 跳过微信屏蔽APP扫描以及识别不同系统的手机
  6. 《学生档案管理系统》
  7. 你不做“推广”,也能帮你招生的小程序
  8. 修复Android手机屏幕的5种简单方法是黑色的
  9. java控制鼠标操作一些重复的事情
  10. SD NAND flash使用说明