以下是我為了要讓 CJK kai 的「斜體字」可以有一些變化所做的事情。

本來我是想看看有沒有辦法做出真的傾斜的楷體。但是一直沒有試成 功,後來改變策略,利用「行書體」來代替斜體字。

主要是有幾個步驟:

  1. 要裝上 ttf , tfm 字型 (step 3,4) 2. 要設定些東西,讓 CJK 知道你裝了字型 (step 1) 3. 再設定,讓 CJK 知道碰到 kai 的斜體 (it, sl) 時 要去找對應的字型。 (step 2)

以下是操作步驟


  • 1. 修改以下幾個檔案,把底下幾行的內容加到檔案最後面

  • /usr/local/share/texmf/fontname/special.map:


@c Arphic Big5 Kaiti TTF italic arb5shu big5 arb5shu


  • /usr/local/share/texmf/ttf2pk/ttfonts.map:

arb5shu@UBig5@ arb5_shu Pid=3 Eid=1


  • /usr/local/share/texmf/tex/latex/CJK/Bg5/c00kai.fd:

\DeclareFontShape{C00}{kai}{m}{it}{<-> CJKsub * shu/m/n }{} \DeclareFontShape{C00}{kai}{m}{sl}{<-> CJKsub * shu/m/n }{}


  • 2. 造出 /usr/local/share/texmf/tex/latex/CJK/Bg5/c00shu.fd 貼入以下內容

\def\fileversion{4.4.0} \def\filedate{2000/12/24} \ProvidesFile{c00kai.fd}[\filedate\space\fileversion]

\DeclareFontFamily{C00}{shu}{\hyphenchar \font\m@ne}

\DeclareFontShape{C00}{shu}{m}{n}{<-> CJK * arb5shu}{} \DeclareFontShape{C00}{shu}{bx}{n}{<-> CJKb * arb5shu}{\CJKbold}

\endinput


  • 3. 找來 dfft_s5.ttc (華康行書體) ,然後拋開良心,開始做壞事

  • cd /usr/local/share/texmf/fonts/truetype/arphic

  • ln -s /path/to/ddft_s5.ttc arb5_shu.ttc

  • 4. 從 .ttc 造出 .tfm

# cd /usr/local/share/texmf/fonts/tfm/arphic # mkdir arb5shu # ttf2tfm /usr/local/share/texmf/fonts/truetype/arphic/arb5_shu.ttc -P 3 -E 1 \ arb5shu@/usr/local/shre/texmf/ttf2pk/UBig5@

  • 5. 加好字型最後一定要重建 ls-R 才能用

  • texconfig rehash