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

转载 2016年05月31日 21:35:13

假期玩得有点凶 ._.前情回顾【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 StdAdobe 宋体 Std调用的是同一种字体的喵。由于XeTeX原生调用字体的方法比较复杂,这里我们使用XeLaTeX的fontspecxeCJK宏包来完成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/blog/339175058/895170050?bfrom=01020110200

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

一天写一篇,大概写一周正好写到建模的样子?→_→大神们求别吐槽求排错求改正什么的。。引言子曰:这段是废话,可以跳过去。又到了〇〇建模的季节,写个论文什么的当然要装13有技术含量。因此长辈们倍加推荐一种...
  • GarfieldEr007
  • GarfieldEr007
  • 2016年05月31日 13:47
  • 1218

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

这里说的不是用LaTeX画图,而是插入已经画好的图片。。想看画图可以把滚动条拉到底。前情回顾【LaTeX】E喵的LaTeX新手入门教程(1)准备篇  【LaTeX】E喵的LaTeX新手入门教程(2)...
  • GarfieldEr007
  • GarfieldEr007
  • 2016年05月31日 21:33
  • 2227

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

昨天熄灯了真是坑爹。前情回顾【LaTeX】E喵的LaTeX新手入门教程(1)准备篇  【LaTeX】E喵的LaTeX新手入门教程(2)基础排版上一期测试答案1.大家一开始想到的肯定是\LaTeX{}...
  • GarfieldEr007
  • GarfieldEr007
  • 2016年05月31日 14:06
  • 1471

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

换了块硬盘折腾了好久。。联想的驱动真坑爹。前情回顾【LaTeX】E喵的LaTeX新手入门教程(1)准备篇文档框架嗯昨天我们已经编写了一个最基本的文档,其内容是这样的:\documentclass{ar...
  • GarfieldEr007
  • GarfieldEr007
  • 2016年05月31日 13:49
  • 1024

LaTeX入门必备视频教程

介绍: LaTeX的入门相对于office办公软件而已,是非常困难的。入门时选择一套精致的视频教程,是非常必要的。 本套LaTeX视频教学视频共15集,格式为mp4,由西北农林科技大学耿楠老师着力...
  • so_geili
  • so_geili
  • 2016年06月17日 20:58
  • 4262

LaTex | LaTex的数学公式中插入中文

在写文档时,发现公式中插入的中文会报错或显示异常,原来是正常情况下不支持,需要稍作修改,使用\mbox来处理下。见下面的例子:$$ P\{\mbox{拒绝} \mid H_{0} \mbox{为真}\...
  • xxzhangx
  • xxzhangx
  • 2017年03月28日 19:37
  • 1916

使用Latex进行中文排版

LaTex是个好东西,我希望你有.安装CJKLaTex排版起初是专门为英文排版设计的,对于亚洲双字节文字并不支持,但是Werner Lemberg 编写了CJK宏包来支持双字节字体。CJK 是中文(C...
  • u012465296
  • u012465296
  • 2016年12月12日 21:21
  • 1547

LaTex中文编辑入门

这是用LaTex进行中文编辑的入门简介,里面介绍了最简单的中文编辑的方法,可以很好的解决中文不显示或者显示乱码的问题。...
  • lkj345
  • lkj345
  • 2016年01月14日 13:22
  • 3428

LaTex中文模板

LaTex中文模板一份之前想在网上找一份通用的latex模板来写文档,省去写导言等的时间。后来发现,网上的模板要么太复杂,要么一运行就出错,这里我提供一份自己常用的中文模板。一些宏包我以注释的形式给出...
  • lusongno1
  • lusongno1
  • 2016年03月06日 15:25
  • 5906

$\LaTeX$中改变目录章节的编号为中文

1 问题提出在写学位论文的时候,文科专业的章节排序编号与理工科专业的要求不一样,一般是这样的要求: 各层次标题一律用汉字及阿拉伯数字连续编号;各层次的序号均左顶格起排,编号与标题或文字间空一个字的...
  • RobertChenGuangzhi
  • RobertChenGuangzhi
  • 2015年09月03日 17:40
  • 6012
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【LaTeX】E喵的LaTeX新手入门教程(6)中文
举报原因:
原因补充:

(最多只允许输入30个字)