CTeX 2.9中給CJK添加中文字體

CTeX 2.9中給CJK添加中文字體


2011-03-06
 

首先, 下載xGBKFonts來轉化中文TureType字體.這個工具可以在http://www.hooklee.com/tex.html下載到最新版.

將TureType字體與xGBKFonts放在同一個目錄裏,然後在命令行窗口裏輸入:



xgbkfonts 字體文件名 調用字體名



其中調用字體名就是希望在tex裏調用時使用的名稱.比如要添加方正粗宋體, 則先輸入



xgbkfonts FZCJW.TTF csong



其中"csong"就是新字體在tex中的名稱(類似於宋體是song一樣). 執行後會詢問PD編號是否確認,這用於帶多個字型的字庫,沒試過多字型的, 按Y繼續. 接下來就等待xGBKFonts的轉換.所有的轉換生成文件最後會放在一個gbkcsong文件夾中. 按程序最後的提示, 將生成的文件拷入localtexmf主目錄下(或按提示添加內容到已經存在的文件中), 注意在Ctex 2.9中, 如果CTeX 2.9的安裝目錄是"C:CTeX", 則localtexmf目錄爲"D:CTeXCTeX". 拷貝添加完成後, 按提示運行initexmf -u和initexmf --mkmaps. 事實上還需要運行"開始-->程序-->CTeX-->MikTex-->Maintenance-->Settings", 在程序中選擇"General-->Maintenance-->Refresh FNDB"和"General-->Maintenance-->Update Formats". 現在方正粗宋體應該在Tex文件中可以使用了. 使用例子:



\documentclass{article}

\usepackage{CJK}

\begin{document}

\begin{CJK*}{GBK}{song}

中文字體



{\CJKfamily{csong}方正粗宋體}

\end{CJK*}

\end{document}



如果想象英文一樣對中文使用\bf命令, 就需要相應字體的粗體字. 例如要用剛生成的csong字體來產生對宋體的\bf效果, 在你的localtexmf目錄下找到"texlatexCJKGBc19song.fd". 用文本編輯器打開它進行編輯. 它看起來是下面樣子的



% This is the file c19song.fd of the CJK package

%   for using Asian logographs (Chinese/Japanese/Korean) with LaTeX2e

%

% automatically generated by zhfd v1.0


\deffileversion{4.8.2}

\deffiledate{2009/09/23}

\ProvidesFile{c19song.fd}[filedatespacefileversion]


% Chinese characters

%

% character set: GBK

% font encoding: CJK (GBK)


\DeclareFontFamily{C19}{song}{hyphenchar fontm@ne}


\DeclareFontShape{C19}{song}{m}{n}{<-> CJK * gbksong}{CJKnormal}

\DeclareFontShape{C19}{song}{b}{n}{<-> CJKb * gbksong}{CJKbold}

\DeclareFontShape{C19}{song}{bx}{n}{<-> CJKb * gbksong}{CJKbold}

\DeclareFontShape{C19}{song}{m}{it}{<-> CJK * gbksongsl}{CJKnormal}

\DeclareFontShape{C19}{song}{b}{it}{<-> CJKb * gbksongsl}{CJKbold}

\DeclareFontShape{C19}{song}{bx}{it}{<-> CJKb * gbksongsl}{CJKbold}

\DeclareFontShape{C19}{song}{m}{sl}{<-> CJK * gbksongsl}{CJKnormal}

\DeclareFontShape{C19}{song}{b}{sl}{<-> CJKb * gbksongsl}{CJKbold}

\DeclareFontShape{C19}{song}{bx}{sl}{<-> CJKb * gbksongsl}{CJKbold}


\endinput



現在將

\DeclareFontShape{C19}{song}{bx}{n}{<-> CJKb * gbksong}{CJKbold}

改爲

\DeclareFontShape{C19}{song}{bx}{n}{<-> CJKb * gbkcsong}{CJKbold}

並將

\DeclareFontShape{C19}{song}{bx}{it}{<-> CJKb * gbksongsl}{CJKbold}

改爲

\DeclareFontShape{C19}{song}{bx}{it}{<-> CJKb * gbkcsongsl}{CJKbold}



保存退出. 現在就可以在tex中對宋體字使用\bf命令了.



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章