`

ubuntu安装texlive2012 以及 xelatex 下使用windows自带字体

    博客分类:
  • Tex
阅读更多

xp下安装了ctex套装,貌似有个texlive的windows版,先不管了,反正ubuntu下的是texlive

 

都说ctex不错,于是安了ctex,但是奈何只能用那几种自带的字体,很不爽,搜索了半天,加上问jyl,最后没有满意答案,又搜索,偶然间在论坛里看到一个帖子,win下用xelatex编译时 文件要用utf8保存。。。晕死我了,困扰好几天的问题终于解决了。

 

记录一下过程吧。

1. windows 下用 ctex中的 xelatex 命令编译可以使用win系统自带的字库。

 

2. 查看系统下都有哪些字体库

fc-list :lang=zh-cn

   我的列表如下:

 

STCaiyun,华文彩云:style=Regular
YouYuan,幼圆:style=Regular
STHupo,华文琥珀:style=Regular
Simsun (Founder Extended),宋体\-方正超大字符集:style=Regular
FZYaoTi,方正姚体:style=Regular
KaiTi_GB2312,楷体_GB2312:style=Regular
NSimSun,新宋体:style=Regular
STSong,华文宋体:style=Regular
Microsoft YaHei,微软雅黑:style=Regular,Normal,obyčejné,Standard,Κανονικά,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta
FangSong_GB2312,仿宋_GB2312:style=Regular
SimSun,宋体:style=Regular
STFangsong,华文仿宋:style=Regular
STXinwei,华文新魏:style=Regular
SimHei,黑体:style=Regular
STXingkai,华文行楷:style=Regular
STLiti,华文隶书:style=Regular
STZhongsong,华文中宋:style=Regular
Microsoft YaHei,微软雅黑:style=Bold,Negreta,tučné,fed,Fett,Έντονα,Negrita,Lihavoitu,Gras,Félkövér,Grassetto,Vet,Halvfet,Pogrubiony,Negrito,Полужирный,Fet,Kalın,Krepko,Lodia
FZShuTi,方正舒体:style=Regular
STXihei,华文细黑:style=Regular
LiSu,隶书:style=Regular
STKaiti,华文楷体:style=Regular

 

3. 编辑文本  xelatex_font.tex  保存为utf8格式

%!Tex Program = xelatex 
\documentclass[12pt,a4paper]{article} 
\usepackage{fontspec,xunicode,xltxtra} 
\usepackage{titlesec} 
\usepackage[top=1in,bottom=1in,left=1.25in,right=1.25in]{geometry}  
\titleformat{\section}{\Large\xbsong}{\thesection}{1em}{}  

\XeTeXlinebreaklocale "zh" 
\XeTeXlinebreakskip = 0pt plus 1pt minus 0.1pt  

\newfontfamily\youyuan{YouYuan} 
\newfontfamily\hwcaiyun{STCaiyun} 
\newfontfamily\hwhupo{STHupo} 
\newfontfamily\yaoti{FZYaoTi} 
\newfontfamily\kaiti{KaiTi_GB2312} 
\newfontfamily\xsong{NSimSun} 
\newfontfamily\hwsong{STSong} 
\newfontfamily\yahei{Microsoft YaHei} 
\newfontfamily\fangsong{FangSong_GB2312} 
\newfontfamily\song{SimSun} 
\newfontfamily\hwfangsong{STFangsong} 
\newfontfamily\weiti{STXinwei} 
\newfontfamily\heiti{SimHei} 
\newfontfamily\hwxingkai{STXingkai} 
\newfontfamily\hwlishu{STLiti} 
\newfontfamily\zhongsong{STZhongsong} 
\newfontfamily\shuti{FZShuTi} 
\newfontfamily\hwhei{STXihei} 
\newfontfamily\lishu{LiSu} 
\newfontfamily\hwkai{STKaiti}  
\renewcommand{\baselinestretch}{1.25}  

\begin{document} 
\title{\yahei \XeTeX 使用系统字体} 
\author{\zhongsong 千羽之城} 
\date{\lishu 二〇一〇年九月二十三日} 
\maketitle  

\begin{table}[htbp] 
\caption{\yahei 字体列表} 
\vskip 6pt  
\centering 
\begin{tabular}{|l|c|r|} 
\hline 
\heiti 字体 & \heiti 命令 & \heiti 字体效果 \\ 
\hline  
\kaiti 幼圆 & \verb+\youyuan+ & \youyuan 幼圆\\ 
\kaiti 华文彩云 & \verb+\hwcaiyun+ & \hwcaiyun  彩云\\ 
\kaiti 华文琥珀 & \verb+\hwhupo+ & \hwhupo 华文琥珀\\ 
\kaiti 姚体 & \verb+\yaoti+ & \yaoti 姚体\\ 
\kaiti 楷体 & \verb+\kaiti+ & \kaiti 楷体\\ 
\kaiti 新宋 & \verb+\xsong+ & \xsong 新宋\\ 
\kaiti 华文宋体 & \verb+\hwsong+ & \hwsong 华文宋体\\ 
\kaiti 雅黑 & \verb+\yahei+ & \yahei 雅黑\\ 
\kaiti 仿宋 & \verb+\fangsong+ & \fangsong 仿宋\\ 
\kaiti 宋体 & \verb+\song+ & \song 宋体\\ 
\kaiti 华文仿宋 & \verb+\hwfangsong+ & \hwfangsong 华文仿宋\\ 
\kaiti 魏体 & \verb+\weiti+ & \weiti 魏体\\ 
\kaiti 黑体 & \verb+\heiti+ & \heiti 黑体\\ 
\kaiti 华文新楷 & \verb+\hwxingkai+ & \hwxingkai 华文新楷\\ 
\kaiti 华文隶书 & \verb+\hwlishu+ & \hwlishu 华文隶书\\ 
\kaiti 华文中宋 & \verb+\zhongsong+ & \zhongsong 华文中宋\\ 
\kaiti 舒体 & \verb+\shuti+ & \shuti 舒体\\ 
\kaiti 华文黑体 & \verb+\hwhei+ & \hwhei 华文黑体\\ 
\kaiti 隶书 & \verb+\lishu+ & \lishu 隶书\\ 
\kaiti 华文楷体 & \verb+\hwkai+ & \hwkai 华文楷体\\ 
\hline 
\end{tabular} 
\end{table}  

\end{document}

 

4. 编译  xelatex  xelatex_font.tex 即可。

 

 

参考资料: http://hi.baidu.com/asnahu/blog/item/dcf4f5cec5a7790d92457e14.html

                http://forum.ubuntu.org.cn/viewtopic.php?f=35&t=265803&start=15

 

 

ubuntu 安装 texlive2012 

 

1.  为了使用图形界面安装,需要安装perl-tk

     sudo apt-get install perl-tk

 

2. 下载 texlive   http://www.tug.org/texlive

 

3.   挂载并安装

      $ sudo mount -o loop  path_to.iso  /mnt

      $ cd /mnt

      $ ./install-tl -gui

      选择里面的创建系统链接  system-link ,等待安装结束

 

4.  拷贝中文字体进入  /usr/share/fonts/zh_CN里面,没有此文件夹自己创建

     我拷贝的6个字体是:

      宋体(simsun.ttf)、仿宋(simfang.ttf)、黑体(simhei.ttf)、楷体(simkai.ttf)、隶书(simli.ttf)、幼圆(simyou.ttf)

     $ cd /usr/share/fonts/zh_CN

     $ chmod 777  *

     $ mkfontscale

     $ mkfontdir

     $ fc-cache

测试字体是否安装完毕:

     $ fc-list

   如果有上面的6中字体就是安装成功了。

 

5. 由于我们使用的是基于XeTex的中文方案,所以接下来是修改ctex-xecjk-winfonts.def文件

    这一步是关键,我在安装时就是修改的不对导致找不到对应的字库。

    文件位置: /usr/local/texlive/2012/texmf-dist/tex/latex/ctex/fontset/下

    原有文件为:

% ctex-xecjk-winfonts.def: Windows 的xeCJK 字体设置,默认为六种中易字体
% vim:ft=tex
 
/setCJKmainfont[BoldFont={SimHei},ItalicFont={[simkai.ttf]}]
  {SimSun}
/setCJKsansfont{SimHei}
/setCJKmonofont{[simfang.ttf]}
 
/setCJKfamilyfont{zhsong}{SimSun}
/setCJKfamilyfont{zhhei}{SimHei}
/setCJKfamilyfont{zhkai}{[simkai.ttf]}
/setCJKfamilyfont{zhfs}{[simfang.ttf]}
 
/newcommand*{/songti}{/CJKfamily{zhsong}} % 宋体
/newcommand*{/heiti}{/CJKfamily{zhhei}}   % 黑体
/newcommand*{/kaishu}{/CJKfamily{zhkai}}  % 楷书
/newcommand*{/fangsong}{/CJKfamily{zhfs}} % 仿宋
/newcommand*{/lishu}{/CJKfamily{zhli}}    % 隶书
/newcommand*{/youyuan}{/CJKfamily{zhyou}} % 幼圆
 
/endinput

    修改后为:

    % ctex-xecjk-winfonts.def: Windows 的xeCJK 字体设置,默认为六种中易字体

% vim:ft=tex
 
/setCJKmainfont[BoldFont={SimHei},ItalicFont={KaiTi_GB2312}
  {SimSun}
/setCJKsansfont{SimHei}
/setCJKmonofont{FangSong_GB2312}
 
/setCJKfamilyfont{zhsong}{SimSun}
/setCJKfamilyfont{zhhei}{SimHei}
/setCJKfamilyfont{zhkai}{KaiTi_GB2312}
/setCJKfamilyfont{zhfs}{FangSong_GB2312}
/setCJKfamilyfont{zhli}{LiSu}
/setCJKfamilyfont{zhyou}{YouYuan}
 
 
/newcommand*{/songti}{/CJKfamily{zhsong}} % 宋体
/newcommand*{/heiti}{/CJKfamily{zhhei}}   % 黑体
/newcommand*{/kaishu}{/CJKfamily{zhkai}}  % 楷书
/newcommand*{/fangsong}{/CJKfamily{zhfs}} % 仿宋
/newcommand*{/lishu}{/CJKfamily{zhli}}    % 隶书
/newcommand*{/youyuan}{/CJKfamily{zhyou}} % 幼圆
 
/endinput

注意,KaiTi_GB2312外面一定不要有[]括号,否则调用xelatex编译时报错:Invalid fontname KaiTi_GB2312

   感觉[]的包含的是file.ttf但是我写ttf文件也是报错,按照上面的配置文件写完后,就正常了。

 

6. 测试文件

    ubuntu下默认utf-8编码哦,不用修改

    test.tex

\documentclass{ctexart}
\begin{document}
你好, TeX 2012!\\
{/heiti 这是黑体}\\
{/songti 这是宋体}\\
{/fangsong 这是仿宋}\\
{/kaishu 这是楷书}\\
{/lishu 这是幼圆}\\
{/youyuan 这是幼圆}\\
\end{document}

 注意文件中的斜杠方向。我在网上看的一个例子就是给的斜杠方向不对,坑人啊。

   编译命令: 

    $xelatex test.tex

   一切正常就会生成 test.pdf了,下面就是自己磨练的时刻了。

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics