さて、Unicodeがからむと話がややこしくなります。
Unicodeは文字の形が変わらないような変換が定義されています。
また、Unicodeの先頭部分はASCIIと同じになっています。
ここで、問題なのは0x5cです。ShiftJISやJIS-X0201では、0x5cは円記号ですが、
UnicodeのU+005cはバックスラッシュが割り当てられています。
そこで本来のShiftJIS->unicode変換では、
「0x5c(円記号)」->「U+00A5(円記号)」
に変換します。見た目も同じで安心 なんですが、
CとかTeXとかでは、意味がある文字だった0x5cと単なる一つの文字のU+00A5ではまったく意味が変わってきます。
そこで、Microsoftでは
「0x5c(円記号)」->「U+005c(バックスラッシュ)」
に変換します。
見た目変わっちゃうジャン!!!!
ということで、UnicodeフォントのU+005cを円記号に....
おい!
それは、UnicodeじゃなくてUnicodeっぽいフォントってことでいいですか?
おかげでUS-ASCIIで書かれた文書をそのフォントで表示するとバックスラッシュであるべき文字(0x5c)が円記号に「化けます」
最低。
さて、罪深いところは、このようになるのは、MS明朝をはじめとするいくつかのフォント「のみ」ってところです。
Microsoft謹製のUnicodeフォント Arial Unicode MSフォントでは0x5cはバックスラッシュになります。
なんじゃそら
ちなみに、AdobeReader付属の小塚フォント、MacOSXのOsakaフォント、フリーで配布されているさざなみフォント、全部
バックスラッシュが出ます。
混乱するじゃないですか、おい。DTPの人は大丈夫なのかな。
やはり0x5cはバックスラッシュで統一したほうがいいんじゃないかなぁ。
円記号は全部置き換えるってことで...
そうそう、Unicode対応のTeXってのはまだ実用まではきてないって本当かな?
まあ、そのうち実用化されそうな気はしますが。
