2011/12/02

Galaxy用のFlipfontの作成

   

Last Update ; 22/Sep/2012

Galaxy用のFlipfontを作成してみました。

当方は韓国版のGalaxy S2(shw-m250s)を利用しているのですが、一部の漢字が日本語とは違う書体で表示されてしまいますので、その対策です。


【FlipFontについて】

Galaxyシリーズではroot化しなくてもフォントを差し替えられる様になっています。

差し替えるフォントは"FlipFont"と呼ばれ、アプリと同じ".apk"の形式でマーケットでも配布されています。

しかし、日本語のフォントは、著作権の関係もあって、数種類しか配布されておらず、自分の好みの物が見つからなかったので、WindowsのTrueType Fontを元に自作してみました。

【準備する物】

SDK(pathが通っている事)

Apk Manager 4.9
http://forum.xda-developers.com/showthread.php?t=695701

FontForge 20110602
http://www.geocities.jp/meir000/fontforge/

ttf2apk_10b.zip
http://www1.axfc.net/uploader/He/so/344737.zip

【手順】

・フォントの準備
・APKファイルの分解
・フォントの入れ替え
・フォント名の変更とAPK化
・FlipFontのインストール

【フォントの準備】

2種類のフォントが必要です。

1)元となるフリップフォントの準備

端末のシステムファイルを利用しても良いのですが、今回は"VL ゴシック"の名称で配布されている"DroidSansJapanese.apk"を利用しました。


ファイルはFont for Galaxy SPから端末にダウンロードして、PC側にコピーしました。

Font for Galaxy SP
https://market.android.com/details?id=com.hongik.fontomizerSP&feature=search_result

2)使用するTrue Typeフォントの準備

今回はメイリオ(Meiryo)というWindows用のフォントを使用しました。

http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=f7d758d2-46ff-4c55-92f2-69ae834ac928

上記をPCにインストールし、"/Windows/Font"にある"Meiryo.ttc"というファイルを作業用のフォルダ(任意)にコピーしておきます。


【APKファイルの分解】

ApkManagerをダウンロードして解凍します。

解凍したフォルダ内の"/place-apk-here-for-modding/"というフォルダ内に、元となるフリップフォントのファイル(今回はDroidSansJapanese.apk)をコピーします。

次に、"Script.bat"をクリックしてApkManagerを起動します。


"Set current project"( "22"+[Enter])から"DroidSansJapanese"を選択すると、"/project/"フォルダ内に"/DroidSansJapanese.apk/"というフォルダが出来ます。

次に、"Decompile apk"("9" + [Enter])を選択すると、" /projects/DroidSansJapanese.apk/assets/fonts/"内に"DroidSansJapanese.ttf"というTrueTypeフォントファイルが出来ます。

【フォントの入れ替え】

1)パラメータの設定

FontForgeをダウンロードして解凍し、"fonrforge.bat"をクリックして起動して、上記の"Meiryo.ttc"と"DroidSansJapanese.ttf"を開きます。



両方のファイルを開いたら、"Meiryo.ttc"のパラメータの設定を"DroidSansJapanese.ttf"のパラメータの設定に書き写していきます。


書き写すのは下記項目です。

[エレメント][フォント情報][一般情報] ; "高さ"、"深さ"、"下線の位置"、"Height" の各項目

 (ここで、"DroidSansJapanese.ttf"側の「縦書きメトリック」をチェックしておきます。)

[エレメント][フォント情報][OS/2] [その他] ; OS/2 Version
[エレメント][フォント情報][OS/2] [メトリック] ; 全ての項目

[エレメント][フォント情報][OS/2] [上つき/下つき]  ; 全ての項目

ここまでが終わったら、左下の[OK]ボタンをクリックします。

2)フォントの差し換え

次に、"DroidSansJapanese.ttf"のフォントを"Meiryo.ttc"に差し替えます。

まず、"DroidSansJapanese.ttf"側で[編集][選択][全て選択][編集][クリア]でフォントを全て削除します。

それから、"Meiryo.ttc"側で[編集][選択][全て選択][編集][コピー]でコピーした物を
"DroidSansJapanese.ttf"側に[編集][貼り付け]で貼り付けます。

この作業にはかなり長い時間が掛かります。

途中でで警告が出ますが、[全部はい]を選択して問題ありません。

ここまで終わったら、"Meiryo.ttc"側のウィンドウは閉じてしまって構いません。

3)その他の設定

次に、[表示][移動]で「uni200b」と入力し、反転したセルの上にカーソルを置き、[右クリック][幅を設定] で"グリフ幅の設定値"を"8"にします。


Mairyoの場合はパラメータの設定はここまでで良いのですが、一部フォントでは以下の変更も必要だそうです。

[表示][移動]で「degree」と入力し、反転したセルの上にカーソルを置き、[右クリック][幅を設定] で"グリフ幅"が[エレメント][フォント情報][一般情報]の"Em Size"("高さ"と"深さ"の和)と同値になっている場合は半分に変更する。


「°」がグリッド内の中心にある場合は、degreeセルをダブルクリックして半角グリッド内に納まるように変更する。

4)ファイルの書き出し

最後に、[ファイル][フォントを出力]でフォントを書き出します。


"True Type"を選択し、"Validate Before Saving"のチェックは外してから、"保存"をボタンを押します。

ここでは、ファイル名が"BauhouseITC.ttf"になっていますが、任意の物で構いません。

【フォント名の変更とAPK化】

ttf2apkをダウンロードし解凍します。

"ttf2apk.bat"を"ttf2apk.txt"にリネームし、エディタ等で開いて以下の部分を書き換えます。


「変数定義(要変更)」
FONTNAME ; 英数小文字 (今回はmeiryo)
JAPANESENAME ; 日本語可 (今回はメイリオ)

書き換えたら、ファイル名を"ttf2apk.bat"に戻します。

上記で作成した"BauhouseITC.ttf”をttf2apk.batにドラッグアンドドロップすると、"変数定義"で
定義したファイル名のフリップフォントファイル(".apk"形式) が作成されます。

【FlipFontのインストール】

作成したファイル(今回は"meiryo.apk")を端末にコピーして、ファイラー等からクリックしてインストールします。

その際に「提供元不明のアプリ 」を有効にしておきます。

インストールしたら設定メニューからフォントを選択します。


以下の記事で実際に作成したFlipFont(複数)と標準のフォントを比較してみましたので、ご参照下さい。

FlipFont比較
http://galaxy-shw-m110s.blogspot.com/2011/12/flipfont.html

6 件のコメント:

  1. 記事を参考に現在トライ中なのですが、けっこう最初の方でつまずいてしまいました。。少し質問してもよろしいでしょうか。windows7を使用してます。
    解凍したApkManager内の"/place-apk-here-for-modding/"にDroidSansJapanese.apkをコピーするところまではできたんですが、その後の作業がうまくいきません。。。
    ApkManagerを起動して"Set current project"( "22"+[Enter])を選択すると、"Choose the app to set as current project? Enter It't Number"という文章が表示され、"9" + [Enter]を押してみたりしたのですが、するとまた最初の画面に戻ってしまいます。。。
    何度やっても
    "/project/"フォルダ内に"/DroidSansJapanese.apk/"というフォルダも、/projects/DroidSansJapanese.apk/assets/fonts/"内に"DroidSansJapanese.ttfのファイルも出現しません。。。

    原因は何が考えられると思いますか?(><)
    ApkManager内の"Script.bat"が、私の場合"Script"という名称になっているんですが、これもうまくいかないことに関係しているのでしょうか?
    何かアドバイスをいただけたら嬉しいです。

    返信削除
    返信
    1. >匿名さん

      Set Current projectで、表示されるリストの中から該当の物を選んでください。(記事に追記しておきます。)

      ファイルの拡張子が表示されないのは、Windows側の設定の問題だと思います。

      削除
  2. たびたびすみません。。。
    "Script"をクリックして、まず最初に選択するのは22の"Set current project"で合ってますよね??
    22を選択しても、"DroidSansJapanese"どころか何一つリストが表示されないんです・・・。
    "/place-apk-here-for-modding/"フォルダ内にはちゃんとTrueType形式のDroidSansJapanese.apkファイルんコピーしてあるんですが・・・
    何が原因かわからず困っています。。

    返信削除
    返信
    1. >匿名さん

      最初に"Set current project"で間違いありません。

      JavaやSDKが未インストールだったり、Pathが通っていなかったりするのではないでしょうか?

      上の返信の拡張子の件でも書きましたが、Windows側の設定をご確認ください。

      削除
  3. JAVAとSDKのインストールやPATHの設定も、ネットを見ながら一通りやったんですけど、一向にうまくいく気配がないです。。
    何かが間違っているんだろうけど、初心者なのでそれすらわからず‥‥(T-T)
    半年前からトライしていて、しばらくして挫折し最近また始めたんですけど、やっぱり無理そうです‥‥

    大変図々しいのですが、Toshiさんが作成していただけないでしょうか?あずきフォントで(>_<)

    返信削除
    返信
    1. >匿名さん

      それをやりたい人ややって欲しい人は大勢いるのでしょうが、著作権の問題がありますので、出来ません。

      なので、皆、勉強して自分で作成・変換しているのです。

      落ち着いてやれば問題無く出来る筈ですので、頑張ってください。

      削除