この章では、すでに利用しているフォントの移行方法について説明します。
JLE SunView システムで使用していた evfont フォントは、次の変換作業を順番に行うことにより、再利用可能になります。
まず、evftobdf(1) コマンドを使用して、いったん evfont を Adobe/MIT BDF 2.1 フォントファイル (拡張子 .bdf) に変換します。
sun% evftobdf jpn.gotm.12 jpn.gotm.12->jpn.gotm.12.j201.bdf jpn.gotm.12->jpn.gotm.12.j208.bdf |
1 つの evfont フォントファイルから 2 つの Adobe/MIT BDF 2.1 フォントファイルが出力されます。.j201.bdf の拡張子の付いたファイルは、 JIS X 0201 の文字集合のフォントを表し、.j208.bdf の拡張子の付いたファイルは、 JIS X 0208 の文字集合のフォントを表します。
次に、bdftopcf(1) を使用して、Adobe/MIT BDF 2.1 フォントファイルをサーバーがアクセス可能な PCF フォントファイルへ変換します。
sun% /usr/openwin/bin/bdftopcf jpn.gotm.12.j208.bdf -o jpn.gotm.12.j208.pcf sun% /usr/openwin/bin/bdftopcf jpn.gotm.12.j201.bdf -o jpn.gotm.12.j201.pcf |
変換したフォントを、日本語フォントとして使用するには、Xserver に登録する必要があります。以下の手順でfont.dir ファイルを作成し、Xserver に登録します。詳細は、mkfontdir(1)、xset(1) を参照してください。
sun% mkfontdir ./ sun% xset fp+ ./ |
Solaris 2.5.1 以前の環境で登録したユーザー定義文字を再利用する場合は、移行作業が必要になります。
ここでは、ユーザー定義文字を含む既存のフォントファイルから $HOME/.Xlocale/$LANG/fonts/UDC ディレクトリにユーザー定義文字を抜き出し、Solaris 2.6 以降でサポートする環境へ移行する方法について説明します。
環境変数 DTUDCFONTPATH が設定されている場合は、そのディレクトリを利用してください。
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 |
抜き出したフォントファイルを 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) のマニュアルページを参照してください。
sdtudc_extract を使って、登録済みのユーザー定義文字を別フォントファイルに抜き出します。
たとえば、フォントマネージャを使って作成した font.ps というフォントファイルからユーザー定義文字を移行するには、次のコマンドを実行します。
sun% sdtudc_extract font.ps UDC1.pfa UDC2.pfa UDC3.pfa : UDC10.pfa |
抜き出したフォントファイルをユーザー定義文字の保存ディレクトリに移動します。次に、「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 |
この方法では、一方のフォントが優先されます。もう一方のフォントは、参照表からドラッグ&ドロップすることによってマージします。
フォントエディタで作成したビットマップフォントファイルとフォントマネージャで作成したフォントファイルからユーザー定義文字を抜き出します。
sun% sdtudc_extract gotm14.pcf > UDC14.bdf sun% sdtudc_extract font.ps UDC1.pfa UDC2.pfa UDC3.pfa : UDC10.pfa |
「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 |
「Solaris 外字ツール」を起動します。
参照表を開き、もう一方のフォントファイルを読み込みます。
sun% /usr/dt/bin/sdtudctool |
参照表から、必要なユーザー定義文字を一覧表にドラッグ&ドロップします。
「ファイル」->「保存」を選択し、ユーザー定義文字フォントファイルを作成します。
「ファイル」->「ユーザー定義文字」を選択し、ユーザー定義文字を読み込んでから新たに登録を開始します。