Illustratorはリンクファイルをどうやって探しているのか

Illustratorって、いつどこでリンクファイルのリンクが変わるのか把握しにくくて、管理が難しいですよねぇ。そこで、イラレさんはリンクファイルをどうやって探しているのかをここで整理してみます。この「どうやって探しているのか」をIllustratorユーザー側もしっかり知っておかないと、ただただ混乱するだけで解決できないのです。

まず、大前提から。「リンクファイルがどこにあるのか」の情報は、Illustratorファイルの中にフルパス(絶対パス)で保管されています。これはIllustratorファイルを保存した時点でのフルパスです。

Illustratorファイルを開くと、イラレさんはこの保管されたフルパスを基にしてリンクファイルを探す旅に出ます。

この時、探しに行く順番があるのです。この順番がキモなんです。イラレさんは旅の行程を決して変えません。
(注:下記の「同階層」は、開いたIllustratorファイルと同じ階層という意味です)

  1. フルパスに同名ファイルがあったら、そのファイルとリンク。
  2. 1 がなかったら、同階層にある同名ファイルとリンク。
  3. 2 がなかったら、同階層にあるLinksフォルダ内の同名ファイルとリンク。
  4. 3 がなかったら、同階層にあるフォルダ内を最下層まで探して同名ファイルとリンク。

ファイルを開く度に、イラレさんは毎回この旅に出ます。そして「保管していたフルパス」と「実際に見つけてリンクしたフルパス」が異なっていても、なんの警告も出しくれません。

さらに、イラレさんのバージョンで違いがあります。

  • CS6(v16.0)まで:2番目まで探しに行き、なかったらリンク切れ。
  • CS6(v16.1)からCC 2017(v21):3番目まで探しに行き、なかったらリンク切れ。
  • CC 2018(v22)以降:4番目まで探しに行き、なかったらリンク切れ。

とにかく、どのバージョンでもかならず1番目から順番に探しに行くのだと承知してください。プログラミングでIf文などの条件分岐になじんでいる人なら理解しやすいでしょう。

たとえば…

下図のように画像ファイル9個をリンクしている + 同名で異なるファイルが混在してる場合を見てみます。

この全画像ファイルのフルパスが変わったとします(上位フォルダの名称を変えたり、上位フォルダを移動したりするだけで全フルパスが変わります)。そしてその状態でIllustratorファイルを開くと、イラレさんは1番目で同名ファイルを見つけられないので、次の2番目で探します。するとどうなるか…。

2番目は「Illustratorファイルの同階層にある同名ファイルとリンク」ですから、こうなってしまいます。何の警告も出してきません。この現象は2番目で発生するので、イラレさんの全バージョンで共通です。同名で異なるファイルをリンクするのはまじでヤバいんですよ…。恐怖!

と、このように1番目から順番に旅の行程をなぞっていくと、イラレさんがどこで何をしたのか理解してあげられるのです。

ちなみに、InDesignも同じ現象になるのですが、なんと、ちゃんと警告してくれるんですよ! インデデさん大好き!

浮紙 8.1.0

浮紙を8.1.0にアップデートしました!
ダウンロードは 浮紙ページからどうぞ。

  • 新規 テキスト整形項目に「縦組用約物を解決」を追加。
  • 修正 テキスト整形項目「CJK 部首補助/康煕部首を解決」が動作していなかったのを修正。
  • 改善 左上メニューを少し整理した。

縦組用約物の文字コードなんかDTPで使ってはいけません。でも、他所で作られたデータにたまに紛れ込んでるんですよね…。たぶんきっとPDFの編集機能のせいです。これについてツイートしたので貼っておきます。

これを実装していたら、「CJK 部首補助/康煕部首を解決」が動作していなかったのに気づきました…。ごめんなさい!

欧文フォント混植の理想と現実

縦組で英数字を欧文フォントにするのは、きわめて筋が悪い。どのように筋が悪いのかをtwitterで連投したので、ここに貼っておきます。

スペーシングの問題はフォントのグリフ、行分割の問題は文字コードに関わる話です。デジタル組版の文字は構成要素にグリフと文字コードの異なる2種類のデータを同時に持ちます。ですから、今のデジタル時代の組版設計は、グリフと文字コードの両方のふるまいを考慮しなければなりません。そうしないと、設計として成立しないのです。

ヒラギノをDTPで使うコツ

ヒラギノは一部の記号が他のAJ1フォントと異なります。例えば、他のAJ1フォントで「×」「÷」は和文用全角グリフですが、ヒラギノだけは欧文用プロポーショナルグリフです。以下がその一部の記号。

§¨°±´¶×÷‐′″ℏℵ↔⇒⇔∀∂∃∅∇∈∊∋∑−∓√∝∞∟∠∧∨∩∪∫∬∭∮∴∵∽≃≒≠≡≦≧≪≫≲≳⊂⊃⊆⊇⊕⊖⊗⊘⊠⊥⊿

DTPでヒラギノを使うと、これらの記号が欧文用になってしまうのでかなり悩まされます。でも、InDesignならこれらを正規表現スタイルで等幅全角字形になるように仕込めばOK。ついでに「‘’“”」も加えるとさらにグッドです。インデデさん大好き。

すこし詳しい説明

AJ1のCMapには大きく分けて「UniJIS」「UniJISX0213」の2種類があります。UniJISX0213はヒラギノだけに採用されています。それ以外のAJ1フォントはすべてUniJISです。

この2種類の違いについては、ちゃんと公式なドキュメントで説明されています。
adobe-type-tools/cmap-resources/Adobe-Japan1-7
上記リンク先の「cid2code.txt」に詳細な説明が書かれています。

でも、どうしてAJ1にヒラギノだけが使っているUniJISX0213があるのか、その理由までは書かれていません。ここから私の推測なのですが、ヒラギノはmacOSのシステムフォントとして、UIでの表示を最優先とし、上記の記号を欧文用文字で表示するようにしているのかもしれません。日本語フォントとして上記の記号が欧文用なのは、率直に申し上げると、まともではありません。やはりAppleの意向に合わせた特異な措置なのであろうと思われます。

DTPでヒラギノを使うなら、UniJISX0213をUniJISに合わせた方が良いでしょう。方法は、上記の記号に等幅全角字形を適用するだけです。これだけでかなり使いやすくなります(中には欧文用の方が使いやすい記号もあったりするかもなので、そこは取捨選択してください)。

追記:
それほど大事ではないと思ったので省いたのですが、念のため書いておきます。UniJISとUniJISX0213の違いは上記のほかにU+2012「‒」があります。これはFIGURE DASH(数字の幅のダッシュ)と呼ばれるものです。しかしAJ1では数字の幅ではなく、UniJISはENダッシュ「–」、UniJISX0213はハイフン「-」と同じグリフが表示されます。まあでもFIGURE DASHを日本語組版で使うこともないでしょうから、これは無視して良いでしょう。

かなり前に作った一覧PDFもついでに公開しておきます。
[PDF]Difference in UniJIS and UniJISX0213.pdf

Glee Ai 1.4.0


Glee Aiを1.4.0に更新しました。
ダウンロードは Glee Ai ページからどうぞ。
Ai File Version もあわせて更新しました。

  • バージョン表示にOSの種類(Mac/Windows)を記載していたのを廃止した。


IllustratorファイルがMac/Windowsのどちらで作られたのかは、XMPのCreatorToolから取得していました。

実はこのCreatorTool、「別名保存をしないと更新されない」というかなり深刻な問題を抱えています。そのため、Windowsで作られたファイルをMacで開いて修正→そのまま保存すると、CreatorToolは更新されずWindowsのまま変わってくれません。不正確な情報を常に表示するのは良くないと判断し、OSの種類の記載をやめることにしました。

このCreatorToolは、Bridgeの情報「アプリケーション」にも表示されています。

ここも別名保存をしないと更新されないので、アプリ名以外のバージョンやOSの種類はまったくあてになりません。とくにIllustratorはCC以降、どのバージョンで開いても普通に保存できてしまうので、ここがずっと変わらずに間違った情報を保持し続けてしまいます。Adobeはファイルの作成アプリバージョンをBridgeのここで確認できると言っていますが、信用してはいけません。