xelatex中文字体配置(2)

这篇日志介绍archlinux环境中字体的安装和用xeCJK方式输入中文的相关配置。

—————————————–

字体的安装:

将simsun等字体复制到目录/usr/share/fonts/TTF

在字体所在目录
执行命令:
mkfontdir  生成font.dir
ttmkfdir   为ttc字体生成font.dir
mkfontscale 为simsun.ttc生成font.scale

生成encoding文件:
sudo cp /usr/share/fonts/encodings/encodings.dir ./

以上命令为X.org 字体系统服务

以下命令为xft字体系统服务:

sudo fc-cache -fv   刷新xft字体库

重启X即可。

——————————————-

xelatex+xeCJK配置:

安装xeCJK宏包:

xeCJK宏包可以从这里下载。

宏包的安装可以参考我的上一篇日志

xeCJK配置:

解压缩xeCJK宏包xecjk-2.2.9.zip,并按照目录结构复制到以下目录:
/usr/share/texmf

执行命令:
texhash

在写tex文件时,可以用以下模板:

\documentclass[a4paper]{article}

\usepackage[version=3]{mhchem}
\usepackage{amsmath}

\usepackage{xeCJK}
\CJKlanguage{zh-cn}
\setmainfont{DejaVu Sans}
\setCJKmainfont{AR PL UMing CN}
\setCJKsansfont[BoldFont=AR PL New Kai]{AR PL New Kai}
\setCJKmonofont{DejaVu Sans Mono}
\setCJKfamilyfont{song}{AR PL New Sung}
\setCJKfamilyfont{kai}{AR PL New Kai}
\setCJKfamilyfont{hei}{文泉驿正黑}

把字体改为你自己的系统字体即可。

在正文中更改字体,可以用以下方式:

\CJKfamily{kai} 这样可以输入楷体

还可以更方便一点:

在导言区定义新命令:

\newcommand\kai{\CJKfamily{kai}}

那么,正文中可以这样写了:

\kai 这里可以输入楷体

————————————-

总的来说xelatex输入中文还是很方便的,用zhconfcfg宏包和xeCJK宏包均可,当然还有很多其他的选择了。

xelatex中文字体配置(1)

xelatex中文字体配置:

/usr/share/texmf/tex/latex/local/zhfontcfg 

下创建宏包zhfontcfg.sty

%大概就是放在texmf之类的目录,具体到哪个位置无所谓,因为要执  行texhash命令的。

内容如下:
————————
% xetex/xelatex 字体设定宏包,作者:lyanry (2007.7.24)

\ProvidesPackage{zhfontcfg}
\usepackage{fontspec,xunicode}
\defaultfontfeatures{Mapping=tex-text} %如果没有它,会有一些 tex 特殊字符无法正常使用,比如连字符。

 % 中文断行
\XeTeXlinebreaklocale “zh”
\XeTeXlinebreakskip = 0pt plus 1pt minus 0.1pt

%将系统字体名映射为逻辑字体名称,主要是为了维护的方便
\newcommand\fontnamehei{文泉驿正黑}
\newcommand\fontnamesong{文鼎PL新宋}
\newcommand\fontnamekai{AR PL UKai CN}
\newcommand\fontnamemono{Bitstream Vera Sans Mono}
\newcommand\fontnameroman{Bitstream Vera Serif}

%设置文档正文字体为宋体
\setmainfont{\fontnamesong}
\setsansfont[BoldFont=\fontnamekai]{\fontnamekai}
\setmonofont{\fontnamemono}

%楷体
\newfontinstance\KAI {\fontnamekai}
\newcommand{\kai}[ 1]{{\KAI  #1}}

%黑体
%\newfontinstance\HEI{\fontnamehei}
%\newcommand{\hei}[ 1]{{\HEI # 1}}

%英文
\newfontinstance\ENF{\fontnameroman }
\newcommand{\en}[1 ]{\,{\ENF #1 }\,}
\newcommand{\EN}{\,\ENF\, }

———————–

然后刷新文件:texhash

——————————————-

现在你就可以在xelatex中使用zhfontcfg宏包:

\usepackage{zhfontcfg}

输入中文

\kai{这样可以输入楷体}

—————————————–

Emacs配置

关闭自动备份功能:

M-x customsize-variable[enter]make-backup-files[enter]

将相关值改为“nil”。

配置auctex:

在~/.emacs中加入:

(add-hook ‘LaTeX-mode-hook (lambda()
(add-to-list ‘TeX-command-list ‘(“XeLaTeX” “%`xelatex%(mode)%’ %t” TeX-run-TeX nil t))

(TeX-PDF-mode t)
(setq TeX-command-default “XeLaTeX”)
(setq TeX-save-query nil )
(setq TeX-show-compilation t)
))

实现默认xelatex编译,并生成pdf。

实现代码折叠:

M-x hide-entry
M-x hide-body
M-x hide-other
M-x hide-leaves
M-x hide-subtree

M-x show-entry
M-x show all
M-x subtree