マイコン工作実験日記

Microcontroller を用いての工作、実験記録

フォントの追加

2009-11-07 22:55:02 | MP3プレーヤ
これまでMP3の再生時の際の曲名や演奏者名の情報の表示には日本語表示に対応するためにIPA GUIフォントを使っていたのですが、英字/漢字に関わらずIPA GUIを使っていました。そのため、英文表示の際になんとなくノッペリとした印象を受け気に入らなかったので、英字部分には別のフォントを用いることとしてみました。

使用したフォントはGentium Book Basicです。IPAフォントと同じように次のような手順を経て、使用しています。
  1. TTFファイルをダウンロード。
  2. FreeTypeを使った自作ユーティリティで、必要なサイズのビットマップデータ(独自フォーマット)を生成。
  3. Linux上で作成したフォントデータをSDカードにコピー。
  4. LPC2388上で、SDカードのフォントデータをLCDモジュールに搭載されているNANDフラッシュにコピー
  5. LCDの表示ルーチンは、NANDフラッシュからフォントデータを読み込み表示。

NANDフラッシュに関しては、単純なR/Wルーチンしか用意しておらず、ファイルシステムは載せていません。そのため、各フォントは単純に連続したページに配置して、その先頭ページを自分でメモして管理しているという手抜きで済ませています。そのため、NANDへのコピー作業の実態は次↓のようなものです。



copyコマンドで、フォント名とコピー先の先頭ページ番号を指定しています。結果として表示されるページ番号が次の領域のページ番号ですので、次のフォントのコピーはそのページから開始しています。そして、ソフト側ではフォントをオープンする際に、このページ番号を指定しているという仕掛けです。

BeforeAfter

ついでに演奏者名の表示位置も若干修正。GUI作成ツールがあるわけじゃないんで、プログラム中でテキトーに座標指定することで位置修正しなけれりゃなりません。うーん、まぁ、こんなところで良しとしておきましょう。

最新の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
Unknown (koiseya)
2009-11-11 21:34:47
先日のARM基板コンテストでキータイプカウンターを出展していた者です。
昨日はいろいろと興味深いお話を聞かせて頂き、ありがとうございました。
mp3プレーヤーについては、blog記事内より予想していたよりも更に多機能で驚きの連続でした。
もし宜しければ、こちらのblogにマイコン工作実験日記のリンクを追加させて頂けませんでしょうか。
返信する
Re: Unknown (sirius506)
2009-11-12 10:30:05
koiseyaさん、

こちらこそ楽しく過ごせ、とても参考になりました。おふたり、そして先輩とのチームワークも素晴らしいですね。

リンクの件、是非ともお願いします。当方もブックマークに追加しました。そちらのブログも楽しみにさせていただきます。
返信する

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。