なんでやねんDTP・新館

はてなダイアリーから移行しました…

CIDベースの文字組みと引用符など

twitter上で話に出たついでに「InDesignのCIDベースの文字組みと引用符など」と題する動画を作成し、YouTubeで公開した。
日頃はあまり気にかけないことかも知れないが、知らぬより知っていた方が何かと便利だと考え、「えいやっ」と作成した次第。


InDesignのCIDベースの文字組みと引用符など

InDesignのデフォルトでONになっている「環境設定/組版/文字組み互換モード/CIDベースの文字組みを使用」と文字コードや引用符などとの関係について,私の理解の範囲で解説しています。CS6以降に追加された「縦組み中で引用符を回転」については触れていませんが,拙ブログで少し触れることにします(この作例はCS4で作成し,和欧文間隔は0%としています)。

        • -

動画をご覧いただいた方が理解しやすいかと思うが、ここにもザッと書き込んでおく。


まず、「CIDベースの文字組みを使用=ON(デフォルト)」の場合は……



  • 基本的にプロポーショナルで(文字が)送られる
  • ユニコード値が異なっても共通のCIDコードの字形を用いる場合は、字幅(といっていいのかよくわからないが)は同一となる(各々1〜2行目)


が、「CIDベースの文字組みを使用=OFF」とすると……



  • CIDコードは同一でも字幅はユニコードに合わせて(?)異なってくる…が、いわゆる全角幅ではないことには注意が必要


但し、同じ「CIDベースの文字組みを使用」の状態でも、フォントのバージョンによって挙動が異なることがある。
一般的なモリサワフォントの場合を例に採って以下に説明する。

  • これ以降の現象は他社フォント(例えばフォントワークスの「マティスPrN」と「マティスPro」)の間でも同様に発生する…要は、末尾※2のリンク先記事にある通り、採用しているCMapに拠るということ*1
  • 但し、イワタフォントの場合は引用符に関しては従来通りの関連づけとなっている(すべての書体ではない)ので、これも注意が必要*2

CIDベースの文字組みを使用=ON(デフォルト)」の場合は……



  • Pr5以降:上は上記の小塚やヒラギノと同様にプロポーショナルで(文字が)送られる
  • Pro以前:下は、U+02BBと02BCについてはロックがかかり書体を変更できない(上のモノをコピーして書体を変更した)…当然CID98/96は存在するのだが、U+02BB/02BCに紐付けられていないことが原因であろう(CID98/96はU+2018/2019に関連する字形となっている)…引用符については全角で送られCIDコードも異なっている
  • これはそれぞれの準拠するユニコードバージョンが違うため…とモリサワでは説明している(末尾※1, ※2参照)


これを「CIDベースの文字組みを使用=OFF」に変更すると……考える必要はあまりないと思うが以下の通り。



  • Pr5以降:上については小塚やヒラギノと同様


私は基本的に「CIDベースの文字組みを使用=ON(デフォルト)」のママで運用しているので……

  • 勿論、これ以降の対処方法もモリサワフォントに限ったことではない



  • ベタ組みの場合などで引用符を全角にしたい場合は「等幅全角字形」適用している(Pr5以降:上の2〜3行目…文字スタイルに登録して適用すればいいし、CS4以降なら正規表現スタイルを利用すれば手間は特にない)


このように「等幅全角字形」を適用したモノは縦組みにした場合でも……



  • 縦組み用の適切な引用符に自動的に置換される(Pro以前:下は特に「等幅全角字形」を適用する必要はない)


また、INDD 2013 Tokyo(spring)で少し紹介したことだが、CS6以降は環境設定の同じ部分に「縦組み中で引用符を回転」というチェック項目が追加された……




が、画像をご覧になればお判りいただける通り、欧文を(欧文用の)引用符で括る時以外は何ら役に立つものではないと思っている*3

        • -

※1 「モリサワOpenTypeフォント Adobe-Japan1-4(Pro) Adobe-Japan1-5(Pr5) Adobe-Japan1-6(Pr6/Pr6N) 変更に伴う字形相違の資料」(pdf)より

現在のMacintoshWindowsシステムでは、文字コードの処理にUnicodeが採用されています。またOpenTypeFonts内には、UnicodeとCID code(Adobe社が策定した各文字を識別するためのコード)の対応テーブルを持っています。
A-J1-4(Pro)仕様のフォントはUnicode3.0を採用しています。その後、国内ではJIS X 0213:2000, JIS X 0213:2004の策定があり、標準字形の見直しが行われています。
この変更に対応したUnicode3.2を採用するA-J1-5(Pr5)、Unicode 4.1/6.1を採用するA-J1-6(Pr6/Pr6N)仕様フォントでは、A-J1-4(Pro)と異なるUnicodeとCID codeの対応テーブルを持つこととなり、A-J1-4(Pro)とA-J1-5(Pr5)・A-J1-6(Pr6/Pr6N)間で文字の相違が起こります。

※2 モリサワ以外では、お馴染みのid:NAOIさんの「モリサワStd・Pro・Pr5・Pr6の違い」に詳しい(記事中にpdfも公開されてる)*4

*1:その書体の発売時期である程度の推測は可能だが、確認は必須

*2:「イワタのPr6版フォントはPro版から書体を切り換えたときに文字化けが発生しない独自仕様で作成されています。 Pr6N版は最新のOpenTypeフォントの標準仕様に従っているため、両者の間で書体を切り換えたとき、一部の異体字に互換性がありません」イワタのHPより

*3:ダブルミニュートにする部分を最初からコード入力しておけばいいのかも知れないが…私には手間に感じるし、縦横変換の可能性を残しておきたい…

*4:尚、当該記事の※2には「ProとPr5の違いについては、モリサワから資料(引用者注:上に引用した資料のPr5当時のモノ)が公開されているが、わたしにはこの資料の内容が理解できない」と記されている