Latex 环境下“中文字体”的使用
Latex 环境下“中文字体”的使用
使用CTex自带编辑器WinEdt,在该环境下如何使用中文字体呢?作为一个菜鸟,折腾了好几天,最终基本解决了这个问题。现在整理下,分享给后来者。
对于使用中文字体,网上的很多教程是CCT、CJK和TY,不过,CCT已经不建议使用,而CJK、TY这些都已经过时了。而且这些方案中使用的中文字体就那么几种,想使用更多的字体,要单独去安装字体,无法直接调用系统安装的字体,这样无疑会很麻烦。最终网上找到的成熟方案是:XeLaTeX。
一、首先,从头讲起,基于LaTeX2对于字体的调用方式:
- {\字体名称 正文内容}
使用CTex宏包调用的实例:
1.新建文件,键入下面代码
- \documentclass{article}
- \usepackage{ctex}
- \begin{document}
- 中文宏包测试 \par % "\par"表示回车换号
- {\songti 这是宋体的样式} \par
- {\heiti 这是黑体的样式} \par
- {\fangsong 这是仿宋的样式} \par
- {\kaishu 这是楷书的样式} \par
- %{\lishu 这是隶书的样式} \par %CTeX的手册中是支持隶书和幼圆的,
- %{\youyuan 这是幼圆的样式} \par %但是不知是何原因编译有问题
- \end{document}
2.点击保存,这里这里保存类型建议以后一直选择“UTF-8”
注意;保存类型建议以后一直选择“UTF-8”,因为一方面xeCJK格式的汉字字体将无法显示,另一方面, GBK 编码是 ctex 宏包的缺省模式,使用 XeTEX 引擎的情况下总是内部使用 UTF-8 编码,所以不必使用这个选项,但这并不妨碍编写 GBK 编码的文档。
3.选择XeLaTeX编译方式,点击查看
4.效果如下图:
二、基于XeLaTeX的中文字体的使用
XeLaTeX可以直接调用系统中安装的字体,但是字体的名称并不是我们通常见到的那样,比如:华文隶书 在系统中是“STLiti”。而如何找到这种对于关系呢?
开始->运行->输入“CMD”,弹出命令窗口:输入:"fc-list",回车,就可以看到系统中所有安装字体的这种对于关系。当然,显示的原因,可能看不全,所有不如把它保存下来,方法是命令窗口中输入:“fc-list>>c:font.txt”(这里假设存入到D盘的font.txt文件下)。
注意:笔者按照网上的两种方法:“fc-list:lang=zh-cn”(查看所有安装的中文字体)或者“fc-list:lang=en”(查看所有安装的英文字体),一直无法查看,在这点上折腾了很长时间。所以,如果你的电脑上可以按这两种方法查看那样最好,如果不能,不妨就用我的方法。当然,如果你搞清楚了其中的原因也欢迎留言。
现在有了这种对应关系,那么就可以继续了。在导言区对全局的字体进行设置:
然后便是对于其它字体的设置和使用,需要注意的是指令的名称是可以自己定义的,但是系统字体名称却一定要按照上面查出来了的字体名称
下面是一个完整的例子:
- \documentclass{article}
- \usepackage{ctex}
- \setmainfont{Times New Roman}%设置Times New Roman为默认的英文字体
- \setCJKmainfont{SimSun} %设置宋体为默认的中文字体
- %设置要使用的英文字体
- %\newfontinstance{\courier} {Courier} %使用Courier字体
- \newfontinstance{\gramond} {Garamond} %使用Garamond字体
- %设置要使用的中文字体
- \setCJKfamilyfont{mhwxk}{STXingkai} %华文行楷
- \newcommand{\stxk}{\CJKfamily{mhwxk}}
- \setCJKfamilyfont{hwlsh}{STLiti} %华文隶书
- \newcommand{\sthwls}{\CJKfamily{hwlsh}}
- \begin{document}
- %{\courier This a Courier Style} \par
- {\gramond This a Garamond font style} \par
- {\stxk 这是华文行楷字体的式样} \par
- {\sthwls 这是华文隶书字体的式样} \par
- \end{document}
注意:
1.以上面的程序代码为例,注释掉的部分是使用Courier字体,如果去掉注释,由于我的电脑上没有这样的字体,于是就出来了这样的情况:编译的时候没有错误,却无法生成PDF文件,进而也就无法查看,所以,出现编译没有错误,但是生成不了PDF文件时要考虑是不是本机没有这种字体。这一点一定一定要引起足够的重视!!!
2.对于系统中查到的字体名称,可能考虑到转义字符原因,有些是不能直接使用的,要把“\”去掉才能正确使用。
例如:系统中查到一种字体:“ FZXiaoBiaoSong\-B05S,方正小标宋简体”如果这样使用就是错误的:
- \setCJKfamilyfont{MyCJKfzxbs}{FZXiaoBiaoSong\-B05S} %方正小标宋简体
- \newcommand{\fzxbs}{\CJKfamily{MyCJKfzxbs}}
正确的使用方法是要去掉“\”的,下面是正确的示例,注意对比:
- \setCJKfamilyfont{MyCJKfzxbs}{FZXiaoBiaoSong-B05S} %方正小标宋简体
- \newcommand{\fzxbs}{\CJKfamily{MyCJKfzxbs}}
参考资料:
[1].在xeLaTeX和CTeX中使用本地系统字体的方法
[2].《CTeX宏包说明》
Latex 环境下“中文字体”的使用相关推荐
- Ubuntu 14.04 LTS 英文环境下中文字体修改
Ubuntu 英文环境下,如果设定地区为中国,会自动下载文鼎的楷体和明体(宋体)(/usr/share/fonts/truetype/arphic),对于电子屏幕阅读来说非常糟糕,特别是在浏览器中.本 ...
- html fontfamily ios,小谈中文环境下中文排版的font-family 字体选择
在开发Mindia 主题的时候,为了弄出相对好看的中文排版,特意补习了下中文排版的font-family 字体选择的相关资料.以下就从自己的角度说下自己的不算得上是收获的收获吧. 众所周知,由于Win ...
- figure字体 latex_如何在 Mac 下的 LaTeX 中使用中文字体?
提供一个比较全的模板供参考,编译用xelatex: \documentclass[11pt,a4paper]{article} % \documentclass[11pt,a4paper]{repor ...
- Ubuntu 9.10 下OpenJDK、SUN JAVA环境及中文字体相关问题
最近升级jvm 发现java软件的中文变得很窄.在网上勾了勾, 编辑~/.profile文件 添加: export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettin ...
- Ubuntu14.04系统安装Latex及配置中文字体
使用Latex排版很方便,免去了面对Word出现的各种奇葩问题,但是Latex是外国人编写的一套排版的宏定义,对于有时候中文使用的时候会出现不兼容的问题.例如在Windows下WinEdt就会出现各种 ...
- linux环境下中文乱码问题
1.centos 系统安装字体库 yum -y install fontconfig 安装成功后可在 /usr/share 目录下看到 fonts和 fontconfig 目录 2.添加中文字体到字体 ...
- 英文环境下中文输入法的设置
英文环境下使用ibus输入法 centos安装的时候已经选择了中文支持,输入法也已经安装,但在英文环境下面竟然无法使用中文输入法,解决办法记录于此, 1.安装ibus(centos6以后已经默认安装) ...
- linux 下中文字体的支持
用linux 安装后,中文字体无法显示,安装之! 上网那个搜索了一下,发现有好几种方法,其中之一就是直接拷贝字体文件到/usr/share/fonts 文件夹下即可. 看这里:http://www.b ...
- mac的python换字体_matplotlib在MAC系统下中文字体显示问题
最近想把部分python数据分析的代码从win系统迁移到MAC上,有部分图片上涉及中文显示,迁移到MAC上warning: UserWarning: findfont: Font family [u' ...
最新文章
- 能力素质有所欠缺_孩子说话啰嗦没重点?家长学会“大脑整理术”,提高孩子表达能力...
- 大学python用什么教材-数据结构 Python语言描述 大学教材
- Linux安装jdk学习
- [POJ 1442]Black Box
- 软件工程导论 银行储蓄系统_银行计算机储蓄系统
- mysql show 翻页_mysql show操作
- 下载了一个IBM Rational RequisitePro Trial,感觉IBM的用户体验不错
- MVC数据验证原理及自定义ModelValidatorProvider实现无编译修改验证规则和错误信息...
- @protocol 和 category 中如何使用 @property
- 计算机学号生成准考证号,设计考场编排,生成准考证号
- Unity3D开发学习
- vivo android 刷机教程,vivo刷机步骤盘点【图文教程】
- 【日常科普】浏览器网页视频自定义倍速播放(无需任何插件)
- win7QQ安装包可能被非法改动导致安装失败怎么办
- Linux常用软件包(常用命令)
- node学习记三之vue与安装的模块(d3\echarts\jquery)
- 使用Lens管理多云Kubernetes
- Excel2021单元格怎么做下拉菜单
- 如何利用SUM函数合并单元格求和
- 天翎知识文档系统+群晖NAS,助力企业实现移动化学习