CodeM Font Generator

  • はじめに
  • 生成手順
  • 生成手順(仮想マシンを使う方法)
  • 【重要】利用に関して
  • 変更履歴

はじめに

本生成スクリプトはプログラミングやコンソール上で
使いやすいフォントを用意することを目的として作成しています。
フォントの合成元として「Source Code Pro」と「Migu 1M」を使用していますが
後々は汎用的なフォント合成スクリプトを目指すのも面白いかと思っています。
※現状では生成物のフォントに特に不満が無い為、未定です。

スクリプトの動作としては

  1. ASCII文字用のフォント(本スクリプトでは「Source Code Pro」)からASCII文字以外を除去
  2. 日本語用フォント(本スクリプトでは「Migu 1M」)からASCII文字を除去
  3. 日本語用フォントから抜けたASCII文字を埋める形でフォントを合成

となっているため、文字のサイズを調整することでその他のフォント合成にも利用
出来ると思います。

生成手順

本生成スクリプトは合成元となるttfフォントと、合成ソフトとしてFontForgeを
使用しています。
生成されたフォントは配布物として含めませんので各自で生成してください。

  • 生成スクリプト(配布物)

    • generate_CodeM.pe*
  • TrueTypeFont ファイル

    • SourceCodePro-Bold.ttf
    • SourceCodePro-Regular.ttf
    • migu-1m-bold.ttf
    • migu-1m-regular.ttf

合成元となるフォントは下記の場所から入手することが出来ます。
Source Code Pro
http://sourceforge.net/projects/sourcecodepro.adobe/
M+ Font
http://mix-mplus-ipa.sourceforge.jp/

  1. 各種 ttfファイル を生成スクリプトと同じディレクトリに置きます。
  2. コンソール上から生成スクリプトを実行します。
    例) fontforge -script generate_CodeM.pe
  3. 下記のフォントが生成されます。
    文字の太さは2種類(通常、太字)、行の間隔は3種類(通常、やや広め、広め)です。
    内容に関してはファイル名を参考にしてください。
    CodeM-Bold-Expanded.ttf
    CodeM-Bold-Wide.ttf
    CodeM-Bold.ttf
    CodeM-Regular-Expanded.ttf
    CodeM-Regular-Wide.ttf
    CodeM-Regular.ttf

生成手順(仮想マシンを使う方法)

Windowsマシン上で生成する場合などにおいて、仮想マシンで生成することも可能です。
仮想マシン環境の構築方法は割愛しますが、こちらの方が便利という人はご活用ください。

  1. VirtualBoxVagrant をインストール
  2. Ubuntu の BOX イメージを codem という名前で登録
  3. 各フォントのzipファイルを取得してこのリポジトリと同じディレクトリに配置する
    • Source Code Pro
      • 1.050R-it.zip
    • Migu 1M
      • migu-1m-20150712.zip
    • zipのファイル名が上記と違う場合は Vagrantfile の該当ファイル名を修正
  4. vagrant up で仮想マシンを起動
    • 仮想マシンのプロビジョニングにより CodeM ディレクトリにフォントが生成されます。

【重要】利用に関して

生成元のフォントに関するライセンスは各種著作物のライセンスに従うものとします。
本スクリプトで生成されたフォントは個人利用の範囲に留め、ネットワークその他による配布は禁止とします。
また、本生成スクリプトの改変や使用は個人の責任において行なってください。

変更履歴

  • [2016/12/19]

    • Visual Studio Code で表示が変だったので調整
  • [2014/06/03]

    • 句読点の位置を調整 [thanks hibaraさん]
  • [2013/05/12]

    • 全角空白可視化
    • 一部記号の変更(|) ※真ん中に隙間が出来るように。
    • 一部半角記号(-<=>@[]^~_{})の位置調整
    • 一部半角記号(.,:;!_)の強調表示
  • [2013/04/10]

    • 文字間隔を調整
  • [2013/04/09]

    • レギュラー書体のAscent,Descentを調整
  • [2013/04/06]

    • 初回登録

vim:ts=4:sw=4