ちくちく日記

DTP系備忘録。真面目にやってます。

Illustratorで外字フォントをアウトラインすると、改行部分に文字がでる

事故りそうになったのでメモ。

Fontographerで作成したフォントをIllustratorCS以降で使用する際、(改行、タブ、スペースなど)グリフ(字形)を含まないテキストをアウトラインすると、ランダムに異なるコードのグリフを勝手に割り当ててしまう。


わかりやすく説明。


たとえば、Fontographerで外字フォントAを作ります。

▲なつかしのOS9環境でのスーツケースアイコン。


これをIllustratorで指定し、テキストを作成。この時、改行を含んだテキストを作成します。

▲外字フォントAをIllustratorで入力。改行つき。


このテキストに対して、アウトラインをかけると…

▲右側のテキストにだけ、アウトラインをかけてみる


あっ!改行部分に文字が!!


何もないはずの改行部分に、突然文字がでてきてしまう。

調べてみるとFontographerのサポートサイト、FAQにこの問題について載っていました。
【フォントを作成したのですが、Illustrator CS3でそのフォントを指定するとタブなどの制御コードに、入力していない文字が表示されてしまいます。さらにアウトライン化するとその文字だけでなく改行コードにも入力していない文字が出てきてしまいます。】

▲サイトからキャプチャ。どうでもいいけど『ください。だけないでしょうか。』って何。


Fontographerさん曰く、これはIllustratorのバグということらしい。
つまり、改行とかスペースとかタブとか、設定が入っていない文字を使うと、勝手に他のグリフを割り当ててしまう。
改行部分については、アウトラインかけるとグリフが割り当てられるらしい。

回避方法としては、『Spaceの文字コードに何かの設定を持たせる必要があります。ユニコード:0020のSpaceの部分に幅設定で「999」などの設定を行ってください』
スペース文字になにか設定をしてやればよいということらしい(字形を付ける必要はなくて、字幅などを設定するだけでよい)。
つまり外字フォントの作り直しということになる。

Fontographerの次期バージョンではこの問題は修正されますということなので、次期バージョンでは、はじめから何らかの値が設定される様になるのかもしれない。


ただ、うちは印刷会社で、外字フォントを作り直すといってもそれはお客様が入稿データに付けてきたもの。
勝手に作り直すわけにもいかないし、そもそも山ほど入稿されるデータの外字フォント、全部作り直すなんて大変すぎる。

なので消極的解決方法

1)データ作成の際、空白文字(改行、タブ、スペース)に外字フォントを使用しない

自分でデータを作成するなら、これでいいけど他の人が作ったデータなどを引き継ぐ場合はそうもいかない、なので

2)外字フォント使用部分はアウトラインかけない

入稿後、作業したデータを丸ごと(コマンド-aして)アウトラインかけて出力にまわす…とか、ありがちな作業なんだけど、今後NGということで。
非常に消極的対処方法なんだけど、現状それぐらいしかないみたい。


このバグ、調べてみたけどIllustratorCS1からCS5まで、どのバージョンでもでます。Illustrator v10ではでなかったので、それ以前なら大丈夫そう。
Fontographerで作った外字フォントをCS以降のIllustratorで使うという人は気をつけてね。