InDesignにおけるJIS04基準フォントのウマヤ化け問題

  • InDesign CS4で「厩」を入力・選択し、字形パネルをダブルクリックしてCID+13647に置換。フォントは(たとえば)小塚明朝Pr6N。そのウェイトを変更してみる。と、CID+13412に化ける(下図)。


  • このグリフ化けのおもしろい点は、cmapテーブルもaaltテーブルも共通だと思われるフォント間で(ウェイトの違いのみで)化けていること。以下、化ける理屈(推測)について、大雑把に述べる。
  • InDesignにおけるaalt(すべての異体字)タグを利用したグリフ置換のメカニズムは、cmapテーブルまたはaaltテーブルが異なるフォント間では、基本的にうまく機能しない。実際、InDesign 2では、いろいろ化けていた。
  • CS以降のInDesignでは、Adobe-Japan1-4とAdobe-Japan1-5のcmapテーブルの違いおよび2系統存在するaaltテーブルの違いへの対策がとられており、フォントを変更するとaalt番号が自動的に補正されたり、フォントの変更がブロックされたりする。
  • が、この文字化け防止の仕組みは、JIS04基準フォント(Pr6Nフォントなど名前に「N」の付くフォント)のcmapの違いに対応していないか、あるいはサポートに失敗しており、「JIS04基準フォントへの変更」を行った場合、(同じJIS04基準フォントからの変更であっても)aaltタグで表現されたグリフの一部が化ける。
  • 「厩」のCID+13647以外では、「甑」のCID+13778と「蠅」のCID+14212も化けるが、これらはいずれも微細な違い(下図)。