日本語環境ユーザーズガイド

付録 B フォントの移行

この章では、すでに利用しているフォントの移行方法について説明します。

Solaris 2.5.1 以前のシステムで作成したユーザー定義文字の移行

Solaris 2.5.1 以前の環境で登録したユーザー定義文字を再利用する場合は、移行作業が必要になります。

ここでは、ユーザー定義文字を含む既存のフォントファイルから $HOME/.Xlocale/$LANG/fonts/UDC ディレクトリにユーザー定義文字を抜き出し、Solaris 2.6 以降でサポートする環境へ移行する方法について説明します。

環境変数 DTUDCFONTPATH が設定されている場合は、そのディレクトリを利用してください。

Procedureフォントエディタで作成したビットマップフォントを移行する方法

  1. sdtudc_extract を使用して、登録済みのユーザー定義文字を別フォントファイルに抜き出します。

    sdtudc_extract/usr/dt/config/locale/sdtudc_map にある変換テーブルを参照し、ユーザー定義文字のコードポイントを Solaris 2.6 以降でサポートするユーザー定義文字の領域内に移動しながら、別フォントファイルに抜き出します。

    sdtudc_map の形式は「変換前の領域」と「変換後の領域の先頭」で表現され、デフォルトでは次のように記述されます。


    a9a1,a9ff                    f5a1
    aaa1,aaff                    f6a1
    aba1,abff                    f7a1
    aca1,acff                    f8a1
    ada1,adff                    f9a1
    aea1,aeff                    faa1
    afa1,afff                    fba1

    上記の 1 行目では、指定したフォントファイル中の 0xa9a1 から 0xa9ff に登録されているユーザー定義文字を 0xf5a1 から始まるコードポイントに順番に割り付けながら抜き出すことを表しています。


    sun% sdtudc_extract gotm14.pcf > UDC14.bdf
    
  2. 抜き出したフォントファイルを PCF に変換し、ユーザー定義文字の保存ディレクトリに移動します。次に、「Solaris 外字ツール」を起動し、新しいユーザー定義文字を登録します。たとえば、14 ドットのビットマップフォントの場合は、作成するフォントファイル名を UDC14.pcf にします。


    sun% bdftopcf -o UDC14.pcf UDC14.bdf
    sun% mkdir -p $HOME/.Xlocale/$LANG/fonts/UDC/Bitmaps
    sun% mv UDC14.pcf $HOME/.Xlocale/$LANG/fonts/UDC/Bitmaps
    sun% /usr/dt/bin/sdtudctool
    

    また、ユーザー定義文字を使用して作成したテキストファイルがある場合は、sdtudc_convert を使って、ユーザー定義文字のコードポイントを移動します。


    sun% sdtudc_convert <テキストファイル> > <新しいテキストファイル>

    sdtudc_convert のソースファイルは、$OPENWINHOME/share/src/locale/ja/fonts/sdtudc_convert.c ディレクトリにあります。

    詳細は、sdtudc_convert(1) のマニュアルページを参照してください。

Procedureフォントマネージャで作成したフォントを移行する方法

  1. sdtudc_extract を使って、登録済みのユーザー定義文字を別フォントファイルに抜き出します。

    たとえば、フォントマネージャを使って作成した font.ps というフォントファイルからユーザー定義文字を移行するには、次のコマンドを実行します。


    sun% sdtudc_extract font.ps
    UDC1.pfa
    UDC2.pfa
    UDC3.pfa
    :
    UDC10.pfa
  2. 抜き出したフォントファイルをユーザー定義文字の保存ディレクトリに移動します。次に、「Solaris 外字ツール」を起動し、新しいユーザー定義文字を登録します。


    sun% mkdir -p $HOME/.Xlocale/$LANG/fonts/UDC/Type1
    sun% mv UDC*.pfa $HOME/.Xlocale/$LANG/fonts/UDC/Type1
    sun% /usr/dt/bin/sdtudctool
    

Procedureフォントエディタで作成したビットマップフォントとフォントマネージャで作成したフォントをマージする方法

この方法では、一方のフォントが優先されます。もう一方のフォントは、参照表からドラッグ&ドロップすることによってマージします。

  1. フォントエディタで作成したビットマップフォントファイルとフォントマネージャで作成したフォントファイルからユーザー定義文字を抜き出します。


    sun% sdtudc_extract gotm14.pcf > UDC14.bdf
    sun% sdtudc_extract font.ps
    UDC1.pfa
    UDC2.pfa
    UDC3.pfa
    :
    UDC10.pfa
  2. 「Solaris 外字ツール」を起動したときに参照するディレクトリに移動します。

    フォントエディタで作成したフォントファイルを優先する場合


    sun% mkdir -p $HOME/.Xlocale/$LANG/fonts/UDC/Bitmaps
    sun% mv UDC14.bdf $HOME/.Xlocale/$LANG/fonts/UDC/Bitmaps
    

    フォントマネージャで作成したフォントを優先する場合


    sun% mkdir -p $HOME/.Xlocale/$LANG/fonts/UDC/Type1
    sun% mv UDC*.pfa $HOME/.Xlocale/$LANG/fonts/UDC/Type1
    
  3. 「Solaris 外字ツール」を起動します。

  4. 参照表を開き、もう一方のフォントファイルを読み込みます。


    sun% /usr/dt/bin/sdtudctool
    
  5. 参照表から、必要なユーザー定義文字を一覧表にドラッグ&ドロップします。

  6. 「ファイル」->「保存」を選択し、ユーザー定義文字フォントファイルを作成します。

  7. 「ファイル」->「ユーザー定義文字」を選択し、ユーザー定義文字を読み込んでから新たに登録を開始します。

Windows で利用しているユーザー定義文字を移行する方法

Procedure$HOME にコピーして使用する場合

  1. $HOME に EUDC.TTEeudc.ttf という名前でコピーします。


    sun% mkdir $HOME/.fonts
    sun% cp EUDC.TTE $HOME/.fonts/eudc.ttf
     
    

    eudc.ttf というファイル名を変更することもできますが、拡張子は .ttf でないと認識されません。

  2. fonts.dir を作成し、fc-cache を更新します。


    sun% cd $HOME/.fonts
    sun% cat /usr/openwin/lib/locale/ja/X11/fonts/TT/fonts.scale.udc > fonts.dir
    sun% fc-cache -f
     
    

    eudc.ttf 以外の名前を使用したときは fonts.dir を編集してください。

  3. フォントパスに追加します。


    sun% /usr/openwin/bin/xset fp+ $HOME/.fonts
     
    

    またユーザの設定ファイル $HOME/.OWfontpath にも追加しておきます。


    sun% echo $HOME/.fonts > $HOME/.OWfontpath
     
    

    以上で Windows で作成されたユーザー定義文字が CDE アプリケーション上で使用可能です。

Procedureシステムにインストールして使用する場合

  1. システムに eudc.ttf という名前でコピーします。


    sun# cp EUDC.TTE /usr/openwin/lib/locale/ja/X11/fonts/TT/eudc.ttf
     
    

    eudc.ttf というファイル名を変更することもできますが、拡張子は .ttf でないと認識されません。

  2. fonts.dirfc-cache を更新します。


    sun# cd /usr/openwin/lib/locale/ja/X11/fonts/TT
    sun# grep '^eudc' fonts.scale.udc >> fonts.dir 
    sun# fc-cache -f
    

    eudc.ttf 以外の名前を使用したときは fonts.dir を編集してください。

Procedureユーザー定義文字を含むテキストファイルの印刷方法

  1. mp コマンドを利用してユーザー定義文字を含むテキストファイルを印刷できます。ja_JP.UTF-8 ロケール以外の日本語ロケールで使用する場合は、


    sun% mp -M
     
    

    のように -M オプションを指定します。

    なお、eudc.ttf 以外のファイル名を使用した場合は /usr/lib/lp/locale/<locale>/mp/mp.confeudc.ttf を変更します。また、システムにインストールした場合もこのファイルの FontNameAlias sunudcjaR の項を /usr/openwin のものと入れ替えます。