freetypeで正常にフォント表示されない問題

具体的にはONScripterでメニュー画面のフォント表示がおかしい(ちょうど参考URL1*1のような状態になる)。これはfreetypeがEmbedded Bitmapを含むフォントを扱う処理に問題があるためで、参考URL2*2のパッチをSDL_ttfに当てると直る。
さらに、MythTVでも同様の問題があったので、FT_Load_Glyph()を呼び出している部分を修正したら、こちらも問題が解消した。

以下CVS HEADに当てるパッチ。

--- mythtv/libs/libmythtv/ttfont.cpp.orig       2005-08-09 15:45:48.000000000 +0900
+++ mythtv/libs/libmythtv/ttfont.cpp    2005-09-23 00:27:16.000000000 +0900
@@ -173,7 +173,7 @@
            continue;
        if (i == 0)
        {
-           FT_Load_Glyph(face, j, FT_LOAD_DEFAULT);
+           FT_Load_Glyph(face, j, FT_LOAD_DEFAULT|FT_LOAD_NO_BITMAP);
            pw += 2; //((face->glyph->metrics.horiBearingX) / 64);
        }

@@ -211,7 +211,7 @@
    Raster_Map *rtmp;

    j = text[0];
-   FT_Load_Glyph(face, j, FT_LOAD_DEFAULT);
+   FT_Load_Glyph(face, j, FT_LOAD_DEFAULT|FT_LOAD_NO_BITMAP);
    x_offset = 2; //(face->glyph->metrics.horiBearingX) / 64;

    y_offset = -(max_descent / 64);
@@ -577,7 +577,7 @@

     code = FT_Get_Char_Index(face, c);

-    FT_Load_Glyph(face, code, FT_LOAD_DEFAULT);
+    FT_Load_Glyph(face, code, FT_LOAD_DEFAULT|FT_LOAD_NO_BITMAP);
     FT_Glyph& glyph = glyphs[c];
     if (FT_Get_Glyph(face->glyph, &glyph))
     {

買った本

ああっ女神さまっ(31) (アフタヌーンKC) 仮面ライダーSPIRITS(8) (マガジンZKC) ことりたちのものがたり (集英社スーパーダッシュ文庫)

『ことりたちのものがたり』*1こういうモチーフは割と好き。似たようなモチーフの作品としては榎木洋子の『バード』*2という作品が個人的に印象深い。これいつか単行本化してくれないかなあ。

初めてのAjax - Ajaxで候補表示

http://fhuman.esys.tsukuba.ac.jp/~nozom/ajax_test/ajax.html (Linux上のFirefoxでのみ動作確認)

技術的に難しいところはないんだけど、JavascriptでDOMやイベントを扱う方法が分からなくて調べるのに時間がかかった。Javascriptに加えてCGIXMLなど様々な知識が要求されるので、AjaxというのはWeb上の総合芸術だと思う。