【LaTeX】E喵的LaTeX新手入门教程(6)中文

假期玩得有点凶 ._.前情回顾【LaTeX】E喵的LaTeX新手入门教程(1)准备篇 
【LaTeX】E喵的LaTeX新手入门教程(2)基础排版 
【LaTeX】E喵的LaTeX新手入门教程(3)数学公式 
【LaTeX】E喵的LaTeX新手入门教程(4)图表 
【LaTeX】E喵的LaTeX新手入门教程(5)参考文献、文档组织先扯一点没啥用的。。。话说呀在高老头发明TeX的时候。。高老头是美国人嘛,自然是本着能用就好的原则,TeX只支持ASCII码。这一代算是第一代TeX程序。而中文编码都是多字节的,所以要想让TeX支持中文的话,唯一的方法是检测一下第一个字节是不是属于中文的,然后再往后读,查表得到输出的文字。基于这个原理,一位德国人搞出了个宏包叫做CJK,就是干这事儿的。嗯看起来很不错的样子,那个年代的人们都喜欢._.嗯到了第二代pdfTeX,对编码的支持仍然没有改观,于是大家还用CJK。然后又过了好久,第三代XeTeX原生支持了Unicode,于是不用分解多字节编码了,而且XeTeX又能读取系统字体,于是就很欢乐了。第四代LuaTeX嘛继承了优良传统,所以我们现在排版中文的话,已经完全用不着CJK宏包了._.XeLaTeX中输出中文XeTeX原生支持Unicode,因此将源文件保存成UTF-8格式就可以了。但是有一点需要注意的是,虽然中文被识别了,但是XeTeX没有默认的中文字体,所以输出的中文都看不见._.为了中文能够显示,我们就得指定一种字体。XeTeX是可以调用系统字体的,但是具体能用哪些,我们得先看一下。查看字体的方法是:fc-list嗯截个图它长这样的._.在第一个冒号和第二个冒号之间的就是字体名称了,用逗号分隔的,哪个都可以用,比如Adobe Song Std和Adobe 宋体 Std调用的是同一种字体的喵。由于XeTeX原生调用字体的方法比较复杂,这里我们使用XeLaTeX的fontspec和xeCJK宏包来完成XeLaTeX中中英文字体的设定。提示:xeCJK宏包已经包含了fontspec宏包,因此只用xeCJK宏包即可的喵0w0所以我们需要在导言区加一句\usepackage{xeCJK}指定中文字体指定中文字体很简单啦。\setCJKmainfont{字体名}
\setCJKmonofont{字体名}一个设置主字体族,一个设置等宽字体族。如果想使用新的字体族可以用\setCJKfamilyfont{族名}{字体名}它们还有很多丰富的选项,具体可以看文档。。。不过xeCJK是国人写的宏包,所以它的文档是中~文~的喵>//< 一口气看五页,不费劲!指定英文字体\setmainfont{字体名}
\setmonofont{字体名}跟上面似乎一样的说._.由于xeCJK宏包的工作,你可以分别为中文和英文指定不同的字体,十分炫酷的喵。如果我不用XeTeX的话。。那你就杯具了。._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.
._.嘛。。通用的解决方案还是有的喵><尾伟大的ctex文档类/宏包xeCJK是只有XeLaTeX才能用的宏包,TeX和pdfTeX表示你这是红果果的歧视啊,你看今年春晚都反歧视了是不,总得搞出个通用的套路才行。于是就有了ctex文档类和宏包的喵(似乎反了,ctex貌似早于XeTeX的喵._.管它呢),只需轻轻一用,从此跨越平台过上xing福生活不是梦想。它的原理是检测一下引擎,如果是XeTeX就用新套路,不是就用老套路的喵,当然做了很多其他工作,具体可以看文档,也是中~文~的喵>//<ctex的使用方法是:

  • 使用ctex文档类
  • 使用ctex宏包

使用ctex文档类以前我们说过LaTeX内置了一些文档类,像article什么什么的十分好用之类的。有了CTeX你就可以抛弃原来的文档类了._.ctex文档类直接支持中文,只需要用ctex给出的文档类就可以了。article → ctexart
report → ctexrep
book → ctexbook换一换就好了的喵。使用ctex宏包\usepackage{ctex}这还用我说么._.小提示ctex的默认字体是Windows自带的那个坑爹宋体,同时还会用到Windows自带的坑爹黑体和坑爹楷体还有坑爹仿宋体,这些字体是有版权的,所以各大TeX发行版是不带的O//O 因此如果你用Linux,确保安装一下它们的喵。下期预告页面设置,指定一下页边距页眉页脚什么的喵。

from: http://blog.renren.com/share/568351353/17829468862

时间: 2024-10-05 06:47:43

【LaTeX】E喵的LaTeX新手入门教程(6)中文的相关文章

【LaTeX】E喵的LaTeX新手入门教程(2)基础排版

换了块硬盘折腾了好久..联想的驱动真坑爹.前情回顾[LaTeX]E喵的LaTeX新手入门教程(1)准备篇文档框架嗯昨天我们已经编写了一个最基本的文档,其内容是这样的:\documentclass{article}\begin{document}XXX is a SB.\end{document}这个文档呢其实是分为两部分的:一部分是\begin{document}之前的那部分也就是第一行,这一部分我们称之为导言区.导言区的内容可以不只一行,它的作用是完成文档的基础设定.比如在这个文档中,我们使用

【LaTeX】E喵的LaTeX新手入门教程(5)参考文献、文档组织

这不是最后一篇,明天开始建模所以会从6号开始继续更新.前情回顾[LaTeX]E喵的LaTeX新手入门教程(1)准备篇 [LaTeX]E喵的LaTeX新手入门教程(2)基础排版 [LaTeX]E喵的LaTeX新手入门教程(3)数学公式 [LaTeX]E喵的LaTeX新手入门教程(4)图表参考文献天下文章一大抄,抄来抄去有提高. ——白岩松常备工具:JabRef>>戳我下载<<JabRef是一款管理参考文献用的软件,相当好用.装好了以后在选项中把这两个选项改成如图示的样子.*nix用户

【LaTeX】E喵的LaTeX新手入门教程(3)数学公式

昨天熄灯了真是坑爹.前情回顾[LaTeX]E喵的LaTeX新手入门教程(1)准备篇 [LaTeX]E喵的LaTeX新手入门教程(2)基础排版上一期测试答案1.大家一开始想到的肯定是\LaTeX{}er.其实\LaTeX er也可以的.2.\LaTeX{} er或\LaTeX\ er数学模式现在我们打算在文档中插入一些数学公式什么的了:按照正常的情况来说,数学公式里面的字符一般都是斜体,而我们要用\textit来一点点把需要变的文字变成斜体这显然是一件极其坑爹的事情.TeX的创造者高爷爷表示他搞T

【LaTeX】E喵的LaTeX新手入门教程(4)图表

这里说的不是用LaTeX画图,而是插入已经画好的图片..想看画图可以把滚动条拉到底.前情回顾[LaTeX]E喵的LaTeX新手入门教程(1)准备篇 [LaTeX]E喵的LaTeX新手入门教程(2)基础排版 [LaTeX]E喵的LaTeX新手入门教程(3)数学公式图片的插入A picture says more than a thousand words. — Shakespeare没图你说个××. ——莎士比亚LaTeX支持的图片格式由于在前面的教程中建议大家使用XeLaTeX,因此在图形格式的

【LaTeX】E喵的LaTeX新手入门教程(1)准备篇

昨天熄灯了真是坑爹.前情回顾[LaTeX]E喵的LaTeX新手入门教程(1)准备篇 [LaTeX]E喵的LaTeX新手入门教程(2)基础排版上一期测试答案1.大家一开始想到的肯定是\LaTeX{}er.其实\LaTeX er也可以的.2.\LaTeX{} er或\LaTeX\ er数学模式现在我们打算在文档中插入一些数学公式什么的了:按照正常的情况来说,数学公式里面的字符一般都是斜体,而我们要用\textit来一点点把需要变的文字变成斜体这显然是一件极其坑爹的事情.TeX的创造者高爷爷表示他搞T

【LaTeX】E喵的LaTeX新手入门教程(3)

[LaTeX]E喵的LaTeX新手入门教程(3) 数学公式作者: 郭英东.sty 昨天熄灯了真是坑爹.前情回顾 [LaTeX]E喵的LaTeX新手入门教程(1)准备篇 [LaTeX]E喵的LaTeX新手入门教程(2)基础排版 上一期测试答案1.大家一开始想到的肯定是\LaTeX{}er.其实\LaTeX er也可以的.2.\LaTeX{} er或\LaTeX\ er数学模式现在我们打算在文档中插入一些数学公式什么的了:按照正常的情况来说,数学公式里面的字符一般都是斜体,而我们要用\textit来

MATLAB新手入门教程

MATLAB入门教程   1.MATLAB的基本知识 1-1.基本运算与函数    在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可.例如: >> (5*2+1.3-0.8)*10/25 ans =4.2000 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上. 小提示: ">>"是MATLAB的提示符号(Prompt),但在PC中文视窗系统

安卓自动化测试(2)Robotium环境搭建与新手入门教程

Robotium环境搭建与新手入门教程 准备工具:Robotium资料下载 知识准备: java基础知识,如基本的数据结构.语法结构.类.继承等 对Android系统较为熟悉,了解四大组件,会编写简单的Android应用程序 熟悉Eclipse IDE使用方法 有足够的耐心与探索精神,遇到问题可以熟练的Google 环境搭建 安装jdk,配置环境变量,如果不会请自行Google 下载安装Android SDK,并更新 下载Eclipse,并安装ADT插件,集成Android SDK Roboti

gulp的使用以及Gulp新手入门教程

Gulp新手入门教程 原文  http://w3ctrain.com/2015/12/22/gulp-for-beginners/ Gulp 是一个自动化工具,前端开发者可以使用它来处理常见任务: 搭建web服务器 文件保存时自动重载浏览器 使用预处理器如Sass.LESS 优化资源,比如压缩CSS.JavaScript.压缩图片 当然Gulp能做的远不止这些.如果你够疯狂,你甚至可以使用它搭建一个静态页面生成器.Gulp真的足够强大,但你必须学会驾驭它. 这是这篇文章的主要目的.帮助你了解Gu