OS Xに文句を言われないフォントにFontForgeで変換[追記あり]

2016年2月10日Mac,パソコン・インターネット

Windowsの手書きフォント作成ソフト「まるで手書き PLUS」を作って、手書きフォントを作りました。

これで、Windowsで使える、TrueTypeフォントができました。

TrueTypeフォントなので、OS Xでも使えるはずです。

ところが、実際にフォントをインストールしようとして、フォントの検証をすると、Font Bookのフォントを検証で怒られます。

フォントの検証

「’name’テーブルの構造」に重大なエラーが、「’name’テーブルの使用性」に軽微なエラーがあるようです。

無理矢理にインストールする事は可能で、インストールした後、スティーキーズ.appなどで表示させる事も可能です。

でも、一番使いたかった、宛名職人で使えないのです。宛名職人Ver.16で、使用可能フォントに現れませんでした。

「宛名書きに使いたかったのに、意味ないじゃん…。」と落胆してしまいました。

Webサービスで、フォントを変換してくれるところはいくつかあったのですが、どういう規約かを調べるのが面倒で、ローカルで変換する方法を探していました。

それで見つけたのが、FontForgeです。

[amazonjs asin="6131965684" locale="JP"]

Mac版がありますし、FreeBSDのポートコレクションにもありました。

Macだと、コンパイル済みバイナリがあります。ちょっと見つけ辛い所にあります。"FontForge_macunivX.5-20090923.pkg.zip"をダウンロードします。

それと、バージョンが古いのが難点です。また、勝手に".ttf"への拡張子の関連付けがされてしまいます。".ttf"のデフォルトアプリが、FontForgeになってしまいます。

FreeBSDなら、次の方法でインストールできます。

# cd /usr/ports/print/fontforge
# make config-recursive
# make install clean

そして、実際に使うには、Xwindowが必要なんですよね…。私は、MacにもFreeBSDにも、X11をインストールしていません。

(追記 2014-01-10 00:07 実は、Mac OS X 10.6.8のiMacにFontForgeをインストールしました。なので、X11がインストールされているので、フォントをダブルクリックすると、GUIが起動します。また、OS X 10.9.1 Mavericksでは検証していません。)

さらに調べてみると、FontForgeには、スクリプトモードと言うのがあって、この場合、X11を必要としないのです。

やりたいのは、フォントの正規化だけなので、スクリプトでできるとありがたいです。

探すと、スクリプトの書き方も、翻訳されて掲載されていました。

OS Xと言うか、宛名職人Ver.16でフォントを使うためにしなければならなかったのは、次の2点です。

  • 'name’テーブルの正規化
  • エンコーディングの変更

上記のチュートリアルに、ほとんどの事が書かれています。それを元に作ったスクリプトが次の物です。私は、これを"ttf4mac.pe"と言う名前で保存しました。Mac OS X/FreeBSDのどちらでも使えます。

#!/usr/local/bin/fontforge
Open($1)
Reencode("sjis")
Generate($1:r + ".sjis.ttf")

FreeBSDでの実行例です。

$ vi ttf4mac.pe
$ chmod +x ttf4mac.pe
$ ./ttf4mac.pe TegakiP09.ttf
Copyright (c) 2000-2012 by George Williams.
 Executable based on sources from 14:57 GMT 31-Jul-2012-ML-NoPython.
 Library based on sources from 14:57 GMT 31-Jul-2012.
This font contains both a 'mor[tx]' table and a 'GSUB' table.
  FF will only read feature/settings in 'morx' which do not match features
  found in 'GSUB'.
Bad lookup table: format=6, first=65535 total glyphs in font=15572
$ ls
TegakiP09.sjis.ttf	TegakiP09.ttf		ttf4mac.pe*

“TegakiP09.ttf"を変換した"TegakiP09.sjis.ttf"ができています。

このフォント"TegakiP09.sjis.ttf"をFontBookで検証してみます。

フォント検証OK

「シグナルオールグリーン、検証OKです。インストール、どうぞ。」とミリアリア・ハウかメイリン・ホークに言われた気がします(機動戦士ガンダム SEED DESTINYネタです)。

Font Book

フォントをインストールし、宛名職人Ver.16で確認したところ、ちゃんとフォントの候補として現れました。そして、無事、宛名印刷できました。

20140109atena-shokunin-16

宛名職人Ver.16では使えるようになったのですが、宛名職人Ver.14では、なぜか使えません。残念。

【シリーズ記事】

(追記 2014-01-10 00:07)

実際に宛名職人Ver.16で使ったエンコーディングは、"mac"ではなく"sjis"でした。"mac"での検証をきちんとしていないため、記事を書き直しました。

また、MacにFontForegeをインストールした詳細を追記しました。

Posted by お市のかた