名前: ttk 日時: 2007-08-16 23:08:02 IPアドレス: 61.210.211.*
>>49113 > JIS X 0213 を念頭に置いている(直接扱わないとしても)のなら JIS X 0213対応 (ここでは、エンコーディングではなくてレパートリーの意味) という観点で見ると、全角/プロポーショナル問題は、もっと大変です。 例えば、 <Ωの上下さかさま(mho)> JIS X 0213 1-03-64, U+2127 CID15515 (prop) → UniJIS-UTF16, UniJISX0213-UTF32 に該当あり CID16204 (全角) → 該当なし のようなものが記号類に沢山あります。 # 非英語欧文の追加文字は、どうせ使わないだろうということで、まだ諦めがつくのですが… 以前、jisx0213パッケージの改良のために作った資料がここにあります。 zenhankaku_02.pdfあたりは参考になると思います。 > UniJIS-UTF16-H の urml とは別に、H か Identity のフォントを用意して、 > この 2 つから VF を作るという策はすぐに思いつきますが >>49115 > よく考えてみると、「別に Identity のものを用意する」のであれば、最初 > から Idenetity だけでやった方がいいですね。 CIDに何らかの形で直接マッピングするのだとしたら、 vf でやるか、 CMap でやるかのどちらかになるのでしょう。 vfでやるとするなら、jisx0213パッケージとそっくりなアプローチです。 しかし、UnicodeとCIDの対応関係のぐちゃぐちゃにはあまり深入りしたくない、 というのも本音です。 (例えば http://support.adobe.co.jp/faq/faq/qadoc.sv?224301+002 ) jisx0213パッケージのように対象フォントも目的も明確なら、また別ですが。 今、有力だと思っているのは、次の案です。 umin*.vf等で<“><”>は、urml, ugbm 等ではなくて、 JISコード + rml, gbm 等"H"系に変換する。 umin*.vf等でのUnicode → Unicode の変換は、下記4つの「FULLWIDTH」がらみに限定する 216f <¥> ixspc=0 U+00A5 YEN SIGN → CID 00061 ×(Prop幅) *U+FFE5 FULLWIDTH YEN SIGN → CID 00711 ○(全角幅) 2171 <¢> mtype=3 U+00A2 CENT SIGN → CID 00102 ×(Prop幅) *U+FFE0 FULLWIDTH CENT SIGN → CID 00713 ○(全角幅) 2172 <£> mtype=3 U+00A3 POUND SIGN → CID 00103 ×(Prop幅) *U+FFE1 FULLWIDTH POUND SIGN → CID 00714 ○(全角幅) 224C <¬> U+00AC NOT SIGN → CID 00153 ×(Prop幅) *U+FFE2 FULLWIDTH NOT SIGN → CID 00751 ○(全角幅) 双柱・平行は、ptexencでは(is_internalUPTEXのときのみ) JIS → Unicode の変換を、双柱(U+2016 DOUBLE VERTICAL LINE)に強制変換する。 それ以外のツールで変換した場合のことは、考慮しないことにする。 それなりに、筋は通っていると思うのですが、 さてどうでしょう。
この書き込みへの返事: