アーカイブ
もうフォントが欲しい話でも、フォントを作る話でもなく、フォントエディタを作る話だな。
自分の中で今、FontForge並に編集できるものに発展させたい欲が燃え上がっている。
でもそこまでやるにはテキストエディタ作るくらいの根性が必要そうでね。
素人が片手間に作れるものでもなさそうに思う。
ともかく、読み込んだデータを、再計算して書き出すと言うところまで出来た。
TrueTypeフォントには、壊れてないかチェックするためのハッシュ的なものが埋め込まれていて、
それを誰が利用しているかは知らないが、ともかく、中身のデータを1箇所いじったら、
一応そのハッシュ的な部分も計算し直してあげなきゃいけないことになっている。
そう決まっているとは言っても、例えば幅を変えたいっていって1バイト変更して、
それに対応するハッシュ的な部分は変更しなくても、ちゃんと動くわけだから、
計算する必要すらないのかも知れないが、一応簡単な合計だから再計算することにした。
さて、フォントを各部分ごとに分解して読み込み、再結合して書き出すわけだが、
結合の際に、どんな順番で並べても良いことになっていて、
出来れば読み込んだときと同じ順番で、勝手に並べ替えずに出力したいけど、
ヘッダ部分での順番と本体部分での順番がバラバラなものばかりで、
その両方の順番を保持するのは面倒なので、結局ヘッダをソートして出力にしちゃった。
本体部分はなるべくそのまま、ヘッダ部分は本体と同じ順番、って感じで出力。
で、出力にも成功して、全てではないけどOS/2テーブルの編集も出来るようになった。
ありがちな画面だが、余計なことはせずにいじりたいところだけいじれるように。
で、スクリーンショットにある部分をチェックして、VeraMonoに日本語を追加。
インストールしてみると、日本語でのフォント名を含まないため、名無しフォントになっていた。
フォント選択ダイアログで、何語があるかってのは紛れもなくここだった。
ただ、日本語が入ってないフォントに日本語という選択肢だけを追加しても、
欧文を選択した場合と何も変わらないので、FontForgeが勝手に追加した分を除去する目的で。
あと、FontForgeでLatin1にも満たないグリフのフォントは、「その他」にされちゃうので、
これに日本語とか追加すれば、日本語フォントしか使えないソフトに対応出来るかも。
とりあえずここまで作ったが、自由に出来なかったものが自由に出来てスッキリしている。