2010/10/10

update.zipでFont置き換え

「自分のupdate.zip作って日本語フォントの置き換え作業を楽にしよう」なんていうネタは既に何人もの先達が書いて下さっている。とてもありがたい。以下のサイトを参考にして、自分もそーゆーのを作ってみたので、メモ。大体が不親切な説明だし(メモだしね・・・)、マネしてなにかあっても責任は取れませんので(と一応書いておく)。・・・まぁ、こんなマネする人たちはとっくに他のサイトを参考にやった後だと思うけどね。

フォント置き換え用のupdate.zipを作る
http://bird-memo.seesaa.net/article/164901537.html

(鬱と)SEとコンピュータ: 日本語フォント追加用のupdate.zipを作ってみた
http://lostman-worlds-end.blogspot.com/2010/04/updatezip.html


さて、まずフォントを用意。
最近、株式会社モトヤという印刷業界の会社がOpen Handset Alliance(OHA)に参画してAndroid用に2種類のフォントを提供したんだそうそうですよ。下のサイトからダウンロードできるみたい。

https://android.git.kernel.org/?p=platform/frameworks/base.git;a=commit;h=4234d40eae54ad9126fbc4b61cbbe8dc78d282bc

"data_fonts_MTLc3m.ttf"が「モトヤシーダ3」、"data_fonts_MTLmr3m.ttf"が「モトヤマリベル3」で、どちらも等幅フォント。シーダが普通のゴシック系で、マリベルは丸ゴシック系。個人的にはマリベルが好みなので、"data_fonts_MTLmr3m.ttf"をダウンロードして"DroidSansJapanese.ttf"にrenameしておく。


で、次に具体的な作業に入るわけだけど、参考にしたサイトがLinuxを使っている内容しかなかったので、可能な限りWindows(XP)で作業してみることにした。

  • まずCyanogenmodからgapps-*-signed.zipを持ってくる(別にこれじゃなくてもいいと思うけど)。
  • ダウンロードしたものを適当なフォルダで「右クリック」→「全て展開」で解凍する。
  • "system"フォルダの中身全部と、"META-INF"フォルダの中の"com"フォルダ_以外_を全部削除。
  • "system"フォルダの中に"fonts"フォルダを作って、その中にさっき準備した"DroidSansJapanese.ttf"を入れておく。
  • "com"→"google"→"android"と開いて、"updater-script"を編集する。

ここで問題。フツーの「メモ帳」では、改行コードの問題でちゃんと編集できない。(やってやれないことはないかもしれないけど、ちょっとフツーじゃない。)
なので、このファイルの編集だけはどっかからUNIX系改行コード対応のテキストエディタが必要。
今回は昔の記憶を頼りに"xyzzy"を使ってみたけど、多分、なんでもいいと思う。

で、具体的なファイルの中身なんだけど、DroidSansJapanese.ttfからDroidSans.ttf, DroidSans-Bold.ttfにシンボリックリンクをはる形にした。これやるとAndroidキーボードの一部の特殊文字が表示されなかったりはするんだけど、普段使うのにはそれほど支障はないし、和文フォントと邦文フォントのバランスが良くなる(あたりまえか)ように思うので、最近手動で入れ替えるときもそうしてる。
ui_print("Installing Fonts..");
mount("MTD", "system", "/system");
show_progress(1, 15);
delete("/system/fonts/DroidSans.ttf", "/system/fonts/DroidSans-Bold.ttf", "/system/fonts/DroidSansJapanese.ttf");
package_extract_dir("system", "/system");
set_perm(0, 0, 0644, "/system/fonts/DroidSansJapanese.ttf");
symlink("/system/fonts/DroidSansJapanese.ttf", "/system/fonts/DroidSans.ttf");
symlink("/system/fonts/DroidSansJapanese.ttf", "/system/fonts/DroidSans-Bold.ttf");
ui_print("Installation complete!");
unmount("/system");

  • ここまで終わったら、最初にgappsを解凍したフォルダに戻り、META-INFとsystemを選択して「右クリック」→「送る」→「圧縮(zip 形式)フォルダ」で圧縮する。出来たフォルダをupdate.zipにrename。

で、AutoSignで再署名するんだけど、手元のPCはコムギドットネットさんの記事を参考に「右クリック」→「送る」→「AutoSign」で"signed-update.zip"が出来るようになっている。(リンク先の最下部にある『AutoSing を「送る」から実行する。[option]』が参考になります。)

HT-03Aに送り込んだらちゃんと変更できたっぽいので、後でDesireでもやってみよう。

0 件のコメント: