Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
making Font on BSD/Linux Box for SL Zaurus
Network Users' Group ``wheel''
/
Dai ISHIJIMA's Page
/
SL Zaurus関連
/
ザウルス向けフォントの作成
初版: 2003/01/26
最終更新日:
2003/01/26
SLザウルス用フォントの作成
SLザウルスには、「LCフォント」と呼ばれる、液晶で読みやすいフォントが
搭載されていますが、アプリケーションによっては、
それ以外の任意のフォントを使うことが可能となっています。
このページでは、既存のフォントをSLザウルスにインストールする
方法をメモしておこうと思います。
SLザウルスのフォント
SLザウルスのフォントは/home/QtPalmtop/lib/fontsディレクトリに収録されています。
ここに収められているフォントの形式は
QPF (Qt Prerenderd Font) という形式らしいです。
この形式のフォントファイルをこのディレクトリに置けば、
「ターミナル」などのアプリケーションで利用できるようです。
Qt/X11とQt/Embedded
QPF形式のフォントファイルは、Qt/Embeddedに入っている
makeqpfコマンドで作成できるようです。
現状では、BDFやFONTXやTTFのような形式から
(環境にあまり依存せず)単純に変換できるツールは
どうやらなさそうです。
つまり、ザウルス向けフォントを作るためには、
Qtの動くマシンを用意しないといけません。
LinuxマシンならQt/Embeddedのフリー版を、
それ以外のX-Windowが動くマシンなら、
Qt/Embeddedのフリー版とQt/X11のフリー版の両方を
インストールするといいようです。
Linuxでも、Qt/Embeddedだけだと実行時にコンソールを占有してしまうので、
Qt/X11も入れたほうがよさそうです。
なお、このページの記述においてQtはフリー版のQtを意味します。
わたしは、
「qt-embedded-free-3.1.1.tar.gz」と
「qt-x11-free-3.1.1.tar.gz」を
インストールしました。
インストール時の使用ディスク容量は、次のようになりました。
% du -s ./*
234679 ./qt-embedded-free-3.1.1
172917 ./qt-x11-free-3.1.1
単位はkバイトです。
二つインストールして、ざっと400Mバイトでした。
makeqpfでフォント作成
BDFファイルからQPFフォントを作成するには、
$QTDIR/lib/fontsディレクトリに変換したいBDFフォントを置いて、
$QTDIR/lib/fonts/fontdirに、そのBDFフォントに関する情報を書いて
$QTDIR/tools/makeqpfディレクトリにあるmakeqpfコマンドを
「makeqpf -A」で実行します。
なお、$QTDIRは、フリー版Qt/Embeddedをインストールしたディレクトリです。
たとえば、X11の標準ディストリビューションに含まれる7×14ドット
英数フォント「7x14」を変換する場合、このフォントのBDFファイルである
「7x14.bdf」ファイルを用意します。
そして、このフォントをSLザウルスで「test」というフォント名で利用するなら
test 7x14.bdf BDF n 50 140 u
の一行をfontdirファイルに追加します。
そしてそのあとmakeqpfを動かします。
うまく動けば「test_140_50.qpf」というファイルができあがります。
最後に、
これをSLザウルスの/home/QtPalmtop/fontsディレクトリにコピーします。
FreeBSDでmakeqpfを使うには
FreeBSDでQt/Embeddedのmakeqpfをいきなり動かそうとしても動きません。
Qt/Embeddedは、通常、画面表示にフレームバッファデバイスを利用しますが、
FreeBSDではこれを利用できないからです。
このフレームバッファはLinuxでないと使えないようで、
Linux以外では、X11を使ったQVFb (Qt/Embedded Virtual Framebuffer) を
利用します。
これは、Qt/X11のものを使います。
つまり、Qt/X11のQVFbを動かして、さらにQt/Embeddedのmakeqpfを動かす、
ということになります。
というわけで、Qt/Embedded以外にQt/X11もインストールする必要があります。
Qt/X11のインストール
適当なディレクトリで、
アーカイブファイル qt-x11-free-3.1.1.tar.gz を展開し、
configure & make でインストールします。
たとえば、
% tar xzvf /tmp/qt-x11-free-3.1.1.tar.gz
% cd qt-x11-free-3.1.1
% ./configure
ライセンスに関する質問が表示されます
This is the Qt/X11 Free Edition.
中略
Do you accept the terms of either license?
ここで「yes」と入力します。
% gmake
% cd tools/qvfb
% gmake
とします。
Qt/Embeddedのインストール
適当なディレクトリで、
アーカイブファイル qt-embedded-free-3.1.1.tar.gz を展開し、
configure & make でインストールします。
たとえば、
% tar xzvf /tmp/qt-embedded-free-3.1.1.tar.gz
% cd qt-embedded-free-3.1.1
% ./configure -qvfb -qt-gfx-transformed
ライセンスに関する質問が表示されます
This is the Qt/Embedded Free Edition.
中略
Do you accept the terms of either license?
ここで「yes」と入力します。
そのあとしばらくすると、ピクセル深度(色数)に関する質問が表示されます。
Choose pixel-depths to support:
中略
Your choices (default 8,16,32):
デフォルトでかまわないのでEnterを押します
% gmake
% cd tools/makeqpf
% gmake
とします。
フォント変換の例
Linuxなら、フォントファイルを用意し、fontdirファイルを編集したあと、
% cd qt-embedded-free-3.1.1
% setenv QTDIR `pwd`
% tools/makeqpf/makeqpf -A
% tools/makeqpf/makeqpf -A -display Transformed:Rot270
のようにすればいいでしょう。
FreeBSDなら、フォントファイルを用意し、fontdirファイルを編集したあと、
% cd qt-embedded-free-3.1.1
% setenv QTDIR `pwd`
% ../qt-x11-free-3.1.1/tools/qvfb/qvfb &
% tools/makeqpf/makeqpf -A
のようにすればいいでしょう。