s_font

Androidアプリを開発している際に、Androidの標準フォントが気に入らなかったのでメイリオでも指定しようとしたら標準で存在しない事に気づきました。

あるわけないんですが(笑)

そんな訳でmeirioフォントファイルを取得して作成しているアプリに適応する事にしました。

assetに突込み取得しようとしたらファイルサイズが思ったよりデカイ…

ttcだからだと思いますが、通常と太文字フォント2つ、あわせて14MBもあり使用するのはたいした文字量じゃないのにこれは嫌だなーと思い軽量化する方法を検討しました。

内容はサブセットフォントメーカーと言うツールを使い、使う文字だけを指定し、使わない文字をフォントファイルから除外すると言うものです。

簡単と言うか安直に軽量化するなら、フォントファイル内の文字を、第一標準に限定し修正すれば良い訳です。

 

最初使い方が良くわかりませんでしたが要するに下記の行程です。

  1. 元ファイルに対象となる.tt○を選択
  2. 修正後の出力ファイル場所を指定する。
  3. 「フォントに格納する文字」という部分に第一標準文字(下記コピペ)を記述して、最下部の作成開始を押す。
上記で軽量化tt○ファイルの完成!

 

半分以下にできたのはメリットが大きく、調子に乗ってtt○ファイルをzip圧縮し、asset配下に配置それを読込むようにしたことで更に軽量化できました。

こちらの実装はここで→

TimeRecord/FontUtils.java at dev1 · peko-the3rd/TimeRecord · GitHub

 

対象文字を更に減らせばかなりの圧縮になると言うことは、数字とローマ字だけが最高ですね(笑)。

英語圏で生まれたかった。

Twitterでフォローお願いします

おすすめの記事