Mac OS X ユーザのための PfaEdit

2003年5月15日更新

更新情報

(2005年12月22日追記)

本家のマニュアルhttp://fontforge.sourceforge.net/ja/mac-install.htmlに Mac のインストール方法が詳しく解説されていますので、そちらを参照された方がいいかと思います。この文書は役割を終えたものと私は考えております。そのうち消すかもしれません。

(2005年1月16日追記)

FontForge の使いこなしの例について書き始めました。

(2004年9月1日追記)

マニュアル翻訳はこちらへ移動しました。このページも Panther における変更とソフトの改名その他に合わせて移動・更新したいと思っています。

もくじ

特徴

Mac OS X になって、OS のコアの部分に Darwin と呼ばれる BSD Unix の一種が採用されたため、各種の Unix 用ソフトウェアがそのまま動くようになりました。 PfaEdit という George Williams 氏が開発されたフォントエディタは高機能で、これだけのために OS X をインストールする価値はあります。

利点

対応するフォーマットが多い
2 バイトフォントをそのまま扱えます。「Save」メニューでフォーマットを選ぶだけで、手軽に日本語 TrueType, CID フォントや OpenType フォントが作れます。Windows と Mac の両フォーマットに対応しています。
ビットマップも編集できる
フォントの埋め込みビットマップが編集可能です。
線の調節がしやすい
フォントエディタの中には制御点をつまんで動かさないといけない物もありますが、曲線の形を試行錯誤するのには、曲線上の任意の点を掴んで動かせないと不便です。
ビットマップをフォント化することができる
AutoTrace というアウトライントレースソフトをインストールすれば、手書きの文字などをスキャナで取り込んで、フォント化することも難しくありません。
スクリプトによる自動処理ができる
CID フォントを作ろうと思ったら、新聞用の合わせ文字などを何百も作らなければなりません。片仮名のデザインを直すたびに、それらのすべてを直すのは現実的ではありません。
フリーソフトである
無料です。それだけでなく、改造も自由です。ソースがあるから、技術力さえあれば自分で直すこともできます。
活発に開発が続けられている
あっと驚くような機能が追加されるかもしれません。

インストール

XFree86 のインストール

未完成です。こちらのページに詳しく解説されていますので、ご覧ください。

Mac OS X 10.2 をご使用の方は、Apple が配布しているバージョンを使用するのがいちばん簡単だと思います。

PfaEdit

コンパイル済みの Mac OS X 用バイナリ はここにあります。

手動インストールの方法

ダブルクリックしてもインストーラが正常に起動しない方は、以下の手順に従って手動でインストールしてください。

例えば、デスクトップに .pkg ファイルを展開した場合、terminal で以下のように入力します。グレーの部分はプロンプト (設定によって多少異なります)、青い部分は実際には表示されない注釈で、黒い太字部分だけが、あなたが入力するテキストです。斜体部分はその人の環境によって異なりますので、入力時はあなたの環境で表示された物を正確に書き写して下さい。

localhost:[201] ls -d ~/Desktop/*.pkg/Contents/Archive.pax.gz
/Users/kanou/Desktop/PfaEdit-030109.pkg/Contents/Archive.pax.gz (このファイル名を下の斜体テキストの部分で使う)
localhost:[202] sudo su
Password:  (←ここで自分のパスワードを入力)
[localhost:/Users/kanou] root# cd /
[localhost:/] root# zcat /Users/kanou/Desktop/PfaEdit-030109.pkg/Contents/Archive.pax.gz | pax -r
[localhost:/] root# exit
exit

既にインストールされているバージョンがある場合、それを先に消す必要があるでしょう。

su を使って root になっている状態 (プロンプトに # が出ている) では、あらゆる操作を妨げなしに行うことができますので、不注意にファイルを消すなどの誤操作により、システムに致命的な障害をもたらすことが簡単にできます。必要な作業が終わったらすぐに exit しましょう。

ファイルの一覧 (1/25版の場合) とちょっと詳しい説明

上の説明でうまく行った人は読まなくて構いません。

PfaEdit-030125.pkg.sit を展開すると、以下のディレクトリツリーが作成されます。(.pkg というのは実はディレクトリなので、terminal で ls -R ~/Desktop/PfaEdit-030125.pkg とすると、ファイルの一覧が表示されます。)

PfaEdit-030125.pkg/
	Contents/
		Archive.bom
		Archive.pax.gz
		Info.plist
		PkgInfo
		Resources/                            
			Description.plist
			License.rtf
			ReadMe.rtf
			Welcome.rtf
			postflight
			preflight

この中の、Archive.pax.gz といういちばん大きなファイルが、PfaEdit の実行ファイルなどを含んだアーカイブです。.gz がついていることから分かるとおり、gzip で圧縮されています。その前の拡張子が .pax であることから、pax アーカイブであることが分かります。

pax コマンドは、標準入力をアーカイブの読み書きの場所として使用しますので、gzip 圧縮されたアーカイブの場合、パイプ (|) を使って zcat Archive.pax.gz | pax オプション という形で使うのが一般的です。オプションを何もつけない場合、ファイル一覧を表示します。

.
./usr
./usr/local
./usr/local/bin
./usr/local/bin/pfaedit
./usr/local/bin/sfddiff
./usr/local/lib
./usr/local/lib/libgdraw.1.0.1.dylib
./usr/local/lib/libgdraw.1.dylib
./usr/local/lib/libgdraw.dylib
./usr/local/lib/libgdraw.la
./usr/local/lib/libgunicode.1.0.0.dylib
./usr/local/lib/libgunicode.1.dylib
./usr/local/lib/libgunicode.dylib
./usr/local/lib/libgunicode.la
./usr/local/man
./usr/local/man/man1
./usr/local/man/man1/pfaedit.1
./usr/local/man/man1/sfddiff.1
./usr/local/share
./usr/local/share/pfaedit
./usr/local/share/pfaedit/Adobe-CNS1-4.cidmap
./usr/local/share/pfaedit/Adobe-GB1-4.cidmap
./usr/local/share/pfaedit/Adobe-Identity-0.cidmap
./usr/local/share/pfaedit/Adobe-Japan1-4.cidmap
./usr/local/share/pfaedit/Adobe-Japan2-0.cidmap
./usr/local/share/pfaedit/Adobe-Korea1-2.cidmap
./usr/local/share/pfaedit/pfaedit-de.ui
./usr/local/share/pfaedit/pfaedit-en.ui
./usr/local/share/pfaedit/pfaedit-es.ui
./usr/local/share/pfaedit/pfaedit-fr.ui
./usr/local/share/pfaedit/pfaedit-ja.ui
./usr/local/share/pfaedit/pfaedit-ru.ui

アーカイブの展開は、-r オプションを使います。zcat Archive.pax.gz | pax -rとすると、カレントディレクトリの下に usr/, usr/local ディレクトリが作成され、その下の階層に、このリストに出てくる各種コマンドやライブラリが展開されます。展開したら、それらのファイルを必要な場所に移動してください。

面倒なことが嫌な人のために

tar.gz 形式にまとめ直した pfaedit-031020.tgz を用意しました。ルートディレクトリの下で展開してください。

AutoTrace

(未完成)

環境設定

デフォルトでは xterm が 3 個、xclock が 1 個起動しますが、これは /usr/X11R6/lib/x11/xinit/xinitrc というファイルに書かれている設定です。ホームディレクトリの下に .xinitrc というファイルが存在すれば、それが実行されます。

PfaEdit だけを使う人のための、最も簡単な .xinitrc のサンプルを作成しました。ホームディレクトリに置けば、次回の X 起動時から以下の設定が有効になります。

xset fp+ /usr/X11R6/lib/X11/fonts/local/
export LANG=ja_JP.EUC
export XMODIFIERS=@im=none
twm &
exec xterm -geometry 80x24+0+0 -name login

標準でインストールされているフォントは 14 ドットが最小なので、より小さなフォントをインストールするといいでしょう。10 ドットフォント「ナガ10」をコンパイルした knj10.pcf.gz, 5x10a.pcf.gz, 5x10rk.pcf.gz の 3 ファイルをダウンロードして、/usr/X11R6/lib/X11/fonts/local/ にコピーしてください。

例えば、terminal で以下のように入力します。グレーの部分はプロンプト (設定によって多少異なります)、青い部分は実際には表示されない注釈で、太字部分が入力するテキストです。

localhost:[201] sudo su
Password:  (←自分のパスワードを入力)
[localhost:/Users/kanou] root# cp *.pcf.gz /usr/X11R6/lib/X11/fonts/local/
[localhost:/Users/kanou] root# cd /usr/X11R6/lib/X11/fonts/local
[localhost:X11/fonts/local] root# mkfontdir
[localhost:X11/fonts/local] root# exit
exit

su を使って root になっている状態 (プロンプトに # が出ている) では、あらゆる操作を妨げなしに行うことができますので、不注意にファイルを消すなどの誤操作により、システムに致命的な障害をもたらすことが簡単にできます。必要な作業が終わったらすぐに exit しましょう。

表示例

10ドットフォントによる日本語UI

使い方

起動法

xterm の上で「pfaedit ファイル名」とすれば、そのファイルを読み込みます。ファイル名を指定しない場合、どのファイルを開くかを尋ねるダイアログが表示されます。

「pfaedit: Command Not Found」と表示される場合は、/usr/local/bin/ にパスが通っていないのが原因です。環境変数 PATH に追加する必要があります。~/.cshrc の最後に「setenv PATH $PATH:/usr/local/bin」という1行を付け加えてください。

通常の操作

現在、マニュアルの日本語訳を行なうプロジェクトをひっそりと行なっています。このままでは完成がいつになるか分からないので、協力してくださる方は大歓迎です。

とりあえず、マニュアル (英語) を読んでください。それほど難しくないので、いじってみれば分かると思います。

(2/27 追記) チュートリアルの和訳を始めました。最初のファイルだけ翻訳済みです。

今のところ、メニュー表示で Cmd- と書かれているキーは, Ctrl- と読み替えてください。(設定を変える方法について追記予定)

日本語表示

日本語メッセージカタログが追加されたので、ほぼ全てのメッセージは日本語で表示可能です。メッセージを何語で表示するかは、通常環境変数 LANG の値によって決まります。日本語表示をしたい場合は、PfaEdit を起動する xterm 画面で「setenv LANG ja」と入力してください。英語表示にもどす場合は、「unsetenv LANG」です。

保存とフォント作成

(未完成)

AutoTrace

(未完成)

ATM で OpenType を使えるようにするための処置

(この項目は、最新の更新に対応して書き直す予定です)

PfaEdit (2002/9/10 version) で書き出した OpenType フォントは、Windows 2000 (試したことはありませんが、Windows XPも) や Mac OS X, Windows 版の ATM Light では表示できますが、Mac OS 9 (恐らく 8 以前でも同じ) 上の ATM (ATM Deluxe 4.6.1 日本語版のみテスト済み) では、使用できません。これ以前のバージョンでは表示できたこともあったという報告がありますが、全面的な文字化けが起こって使用できない状態でした。

いろいろ試してみたところ、ATM に正常なフォントと認識させるためには以下の修正が必要であることが分かりました。

・head テーブルの fontRevision の値はバージョン 1.0 より小さな値ではいけない。16 進数で言えば、 0x00010000 以上の値にする必要がある。(この値は、CFF string 内の /Version の値とも、name テーブル内の Version の値とも一致する必要はない。OpenType Recommendation によれば、name テーブルの値を小数第3位まで取って 16-16 の固定小数点表示した物にする必要があるが、こうすると バージョンが 0.xx の場合、ATM による解析結果が「チェックサムエラー」と認識される)

・cmap テーブルに、SJIS (83pv) → CID への変換を定義する、Platform ID = 1 (Macintosh), Platform Specific ID = 1 (Japanese) のサブテーブルが含まれていなければならない。

また、未定義の CID があると、その部分は無い物として認識されてしまい、後ろの文字がそのぶんだけ繰り上がって、文字化けを起こしてしまいます (Windows 版 ATM Light 4.1J ではエラーとなります)。とりあえず何か文字定義を埋めておく必要があるようです。

PfaEdit に手を入れずに、この問題を暫定的に解決するためのスクリプトを作成しました。以下の手順に従って使用してください。

事前に pfaedit が /usr/local/bin/ にインストールされている必要があります。

元フォントが OpenType でない場合、pfaedit を用いて手作業で変換します。

「CID」→「CID に変換」を選び、[cidmap...] ダイアログで CID フォントの文字集合名として、「Adobe-Japan1-4」 を選ぶ
  • 「ファイル」→「フォントを出力」で OpenType を書き出す。フォーマットは「OpenType CID」を選ぶ (「OpenType CID (dfont)」ではなく)。

    次に変換処理を行います。

  • fixOTF.tar.gz をダウンロードして展開する
  • fixOTF/ に OpenType 形式に変換したフォントファイルを置く
  • シェルスクリプト fixOTF.sh で処理する。

    具体的な変換手順は以下のようになります。(%はプロンプト。イタリックのフォント名は、実際に変換したいフォント名に読み替えてください)

    % tar xvzf fixOTF.tar.gz
    % mv YourFont.otf fixOTF/
    % cd fixOTF/
    % ./fixOTF.sh YourFont.otf
    

    ディレクトリ fixOTF/new/ 以下に作成された YourFont.otf が修正後の OpenType フォントです。

    スクリプトによる自動化

    PfaEdit ではスクリプト機能がサポートされているため、大量の囲み文字や組文字が定義されている日本語 CID フォントの作成においては大きな強みを発揮します。 スクリプトの構文は、手による編集操作の一部をそのままコマンド化したものなので強い癖があり、使用のためにはコツが必要です。

    (以下未完成)

    質問と回答

    Q: Mac OS 9 以前の OS で使いたいんだけど…。
    A: ごめんなさい、無理です。(XFree86 が移植されれば希望はあるかも…。)
    Q:どんなフォントが読み書きできるの?
    A: 保存メニューでは、`PS Type 1 (Ascii)',`PS Type 1 (Binary)',`PS Type 3',`PS Type 0',`PS CID',`TrueType',`TrueType (Symbol)',`TrueType (Mac Bin)',`TrueType (Mac dfont)',`OpenType',`OpenType (Mac dfont)',`OpenType CID',`OpenType CID(dfont)' の 13 個が選べます。
    Q: OTF は編集できないの?
    できません。
    Q: 丸漢ファイルは作れるの?
    A: まだです。
    Q: メニューの日本語表示はできるの?
    A: メッセージさえ翻訳すればできるはずです。既に試行された方がいまして、
    Q: ここにない質問をしたいんだけど…
    原作者による Frequently Asked Questionsにあるかも知れません。それがなければ kanou@mil.allnet.ne.jp までメールを。

    リンク

    PfaEdit
    http://pfaedit.sourceforge.net/Problems-MacOSX.html
    AutoTrace
    http://autotrace.sourceforge.net/

    変更履歴

    2002-04-09
    このページを作成した。
    2002-04-12
    Q&Aに少し情報を追加。
    2002-09-26
    Mac 版 ATM で使えるようにするための情報を追加