機種依存文字
出典: フリー百科事典『ウィキペディア(Wikipedia)』
機種依存文字(きしゅいぞんもじ)とは、電子的に扱う文字データのうち、処理系(ソフトウェアおよびハードウェア)によって違う文字に表示されたり、表示・印刷できなかったりするものの慣用的な総称である。JEFやJIPS等のようなメインフレーム/汎用機用の符号化文字集合については、コード体系そのものが機種依存するという前提があるため、本項では扱わない。
不特定多数との通信で機種依存文字を使用すると文字化けの原因にもなる。
目次 |
[編集] 機種依存文字に関する歴史
日本語の文字コード体系は、JIS C 6226-1978によって第一水準漢字、第二水準漢字、非漢字として規格化されたが、これらは実際の文書作成の際に必要となる記号や組文字を十分に組み込んだものではなかった。そして、コード空間の空き領域(09区~15区)は「一時的・局所的に文字を割り当てて使用しても構わない」自由領域とされた(この規定は1997年のJIS X 0208-1997から削除)。
そのため、コンピュータメーカー各社はそれぞれ独自に拡張した記号類をこの領域に収録し、外字領域として扱われることになった。コンピュータの機種によって違う文字が表示されるコード領域となったのである。
1987年頃から主要なパソコン通信サービスが開始されるようになり、多くのパソコンがホスト局に接続され、電子掲示板や電子メールなどで文章のやり取りが行われるようになると、特に問題となったのがPC-9800シリーズとMacintosh・DOS/V間での表示の相違であったことから、これらのコードをパソコン通信等の世界では「機種依存文字」、または当時PC-9800シリーズのシェアが多かったために、PC-9800(あるいはエプソンのPC-9800互換機)シリーズでしか表示できない文字として「98文字」(キューハチ文字)と呼ぶようになったのである。
現在は、Macintosh以外のパソコンではオペレーティングシステムとして広くMicrosoft Windowsが用いられて文字表示はOSの役割となっている上、使用するフォントセットによって拡張文字の表示は変化するため、パソコンでは「機種依存文字」の呼称は正確性を失うものとなった。また、機種依存文字の代表格であった丸囲い数字、ローマ数字などはUnicodeに収録され規格内のコードとなった。しかし、歴史的な経緯から、表示に関して機種依存性が高い文字の総称として現在も使用されている。この意味では半角カナも広い意味で機種依存文字ということができる。
なお機種依存文字の定義があいまいになった現在においても、典型的な機種依存文字であると言えるのが、携帯電話のインターネット接続サービス(NTTドコモのiモードなど)対応電話機の「絵文字」のような文字である。これらの文字はShift_JISのユーザ拡張領域[1]やUnicodeの私的領域に登録されており、他の機種においては別の実装をされている可能性が著しく高いからである。
[編集] 機種依存文字の定義
[編集] 1980年代
1980年代においては、以下の理由により、「各コンピュータメーカーが、公的規格には無いため独自に拡張して搭載した文字」が、機種依存文字であるという定義が成り立っていた。
- 日本語文字コードの公的規格はJIS X 0201とJIS X 0208だけが存在した。
- 各メーカーのパソコンごとに搭載されているフォントセットの文字集合がバラバラであった。
[編集] 2000年代
以下の理由により2000年代現在では、機種依存文字について、「どんな機種でも表示できるとは言えない文字」、若しくは、「異機種間のデータ交換の際に文字化けする確率が高い文字」という程度の定義しか出来ない。
- 一般的なパソコンにおけるOSのシェアの大半をWindowsが握っているため、データ交換時はWindowsが表示できる文字を利用すれば大抵の場合、文字化けは起こらない(例外についてはこちらを参照)。
- WindowsにおいてShift_JISに独自拡張された文字は全てUnicodeに登録されている。
- 現在、日本で使われる符号化文字集合の公的規格は以下のように何種類も存在する。
- JIS X 0201
- JIS X 0208:1990
- JIS X 0212:1990
- JIS X 0213:2004
- JIS X 0221:2001(≒ ISO 10646-1:2000 ≒ Unicode3.0)
- 現在のパソコンは、フォントセットの切り替えによって、表示に使う文字集合を切り替えられる。
- 現在のパソコンは、さまざまな文字符号化方式(エンコーディング)に対応している。
- WindowsのShift_JISの独自拡張であったNEC特殊文字は、現在ではJIS X 0213:2000において、同一面区点の位置に登録されている[2]。
- JIS X 0213:2004の一部の文字などは公的規格の文字にもかかわらず、使える機種がWindows Vista搭載のPC等、ごく一部の機種に限られてしまうという実情がある。
[編集] Macintoshと機種依存文字
Macintoshが機種依存文字で問題を発生させるようになった原因として、Windowsは1992年という早い段階からWindows標準システム外字に統一されたのに対して、Macintoshは二転三転を繰り返してきたことも挙げられる[3]。
[編集] 機種依存orその他の理由による文字の誤表示の各ケース
文字が正しく表示できないことについては、「どのように(How)表示出来なかったのか」という観点と、「なぜ(Why)表示出来なかったのか」という観点の二種類から語ることが出来る。
- 「How」の2種類
- 「〓(ゲタ)」「・(中黒)」「□(豆腐)」等の文字に置換されて表示された。
- 別の文字として表示(文字化け)された。
- 「Why」の3種類
- 表示しようとしている文字がフォントセットの中に用意されていない。
- データ自体と表示設定とで文字符号化方式(エンコーディング)が違う。
- システム固有の登録文字を他システムで表示しようとしている。
「〓(ゲタ)」「・(中黒)」「□(豆腐)」等の文字に置換されて表示された場合というのは、大抵の場合、エンコーディングは一致しているものの、フォントセットを表示側のシステムが用意していない時である
別の文字として表示(文字化け)された場合というのは、エンコーディングが違うか、システム固有の登録文字を他システムで表示しようとしている時である。
この中で、「フォントセットを表示側のシステムが用意していない」場合と「特定のシステムに固有の登録文字を他システムで表示しようとしている」場合が「機種依存」であるとされる。
詳しくは「文字化け」の項目を参照。
[編集] 機種依存文字問題の現在
機種依存文字に関しては、ネチケットを取り扱っているWebページ等、色々な所で議論されることもあるが、2006年現在の所、オペレーティングシステムとしてMicrosoft Windowsがシェアとして非常に多い状況となっており、また他のオペレーティングシステムを殆ど使用したことがない人、Mac OSやLinuxなどの、別のオペレーティングシステムにてテストする環境が一切ない人も少なくない。そのため、コンピュータの初心者は言わずもがなだが、上級者であっても、所謂コンピュータ会社や工学部のある大学、インターネットサービスプロバイダのWebページ、またそこから送信されるEメールの文章等に、公然とNEC特殊文字やIBM拡張文字が含まれている[4]ことも往々にして存在する。同様にそれを閲覧する側にも、Microsoft Windowsを利用している人が多い為、それを指摘しない、指摘できない、気づかない、指摘する必要が無い場合も多く、しばし放置されている事が多いのが現状である。
しかし、少数でもLinuxやMac OSなどを使用しているユーザーが世界に存在している以上、Webページを制作したり、ブログを書いたり[5]、BBSを使用したり、Eメールを送信したり、DTP編集にかけるためのテキスト原稿を提出する[6]場合には、機種依存文字の問題について注意を払うべきである。
[編集] 機種依存文字の将来
将来的にはUnicodeが文字コードの標準になると思われるが、Unicodeに対応していないウェブブラウザ搭載の携帯電話が大量に普及してしまったため標準化にはしばらく時間がかかると思われる。
[編集] 日本語文字の表示機種依存性
以下は、UTF-8を用いた本サイトにおける日本語文字の表示機種依存性を表した表である。ちなみにここで言う「機種依存性」とはアプリケーションなど機種以外の環境に対する依存性の意味を包含した言葉である。なお、表示フォントはWX310Kを除き、MS Pゴシックを使用している。
機種依存性 | 文字の種類 | 文字の例 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
非常に低い | ASCII文字(バックスラッシュを除く) | 1,A,@ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
▲ | 全角ひらがな・カタカナ | あ,イ,ゑ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
┃ | 学習漢字 | 一,本,場 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
┃ | 常用漢字 | 璽,賓,薦 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
┃ | JIS非漢字 | ♪,★,∀ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
┃ | JIS第一水準漢字 | 聯,漣,慧 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
┃ | JIS第二水準漢字 | 丼,巫,屁 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
┃ | NEC特殊文字(13区のみ) | ①,Ⅲ,㍼ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
┃ | 半角カナ | ア,イ,ウ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
┃ | IBM拡張文字∩JIS補助漢字 | 彅,鄧,燁 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | × |
┃ | IBM拡張文字 | ⅲ,髙,閒 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | × |
┃ | JIS補助漢字 | 鷗,絓,瀆 | ○ | △ | △ | △ | △ | △ | △ | △ | × |
┃ | Macintosh記号 | ㈰,㊩,〄 | ○ | ○ | △ | △ | △ | △ | △ | △ | × |
┃ | CJK統合漢字拡張A(第三・四水準漢字内) | 㐂,㐬,㔟 | ○ | ○ | △ | △ | △ | △ | ▲ | × | × |
┃ | CJK統合漢字拡張B(第三・四水準漢字内) | 𠘨,𡈽,𠫓 | ○ | △ | △ | △ | × | × | × | × | × |
▼ | CJK統合漢字拡張B(第三・四水準漢字外) | 𠄷,𠦜,𠮷 | △ | △ | △ | × | × | × | × | × | × |
非常に高い | iモード絵文字 | ,, | × | × | 化 | 化 | × | 化 | × | × | ○ |
- Windows Vista RC1 & Firefox 1.5.0.6
- Windows Vista RC1 & Internet Explorer 7.0.5.6(for Windows Vista)
- Windows Vista β2 & Internet Explorer 7.0 β2(for Windows Vista)
- Windows XP SP2 & Firefox 1.5.0.4(JS平成ゴシックW5[JISX0213:2004]インストール済み)[7]
- Windows XP SP2 & Firefox 1.5.0.4 (付加フォントなし)
- Windows XP SP2 & Opera 9.00
- Windows XP SP2 & Internet Explorer 7.0.5730.11(for Windows XP)
- Windows XP SP2 & Internet Explorer 6.0 SP2[8]
- 京セラ WX310K & Opera 7.0
- ○ ― 綺麗に表示可能
- ▲ - 表示フォントにその文字群が登録されているものを指定すれば表示可能
- △ ― 汚く表示可能
- × ― 表示不可能(「?」「□」「・」等で表示)
- 化 ― 文字化け
[編集] 関連項目
- Suisui/機種依存文字テスト 各環境での表示状況
- Microsoftコードページ932 NEC特殊文字とIBM拡張文字に関する詳しい説明
- Wikipedia:特殊記号
- 文字化け
[編集] 外部リンク
[編集] 脚注
- ^ CP932においてユーザ拡張領域と定められているに過ぎず、JIS X 0208:1997においては拡張そのものが禁止されている。
- ^ それゆえかどうかは不明であるが、iモードのShift_JISにおいてはNEC特殊文字はWindowsのShift_JISと同様のコードポイントで利用可能である。
- ^ 「機種依存文字の歴史」 ミケネコ研究所。
- ^ なぜ、このようなことが可能なのかと言うと、Windowsのメーラソフトが扱う文字符号化方式は純然たるISO-2022-JPではなく、それを拡張したCP50220であることが多いためである。
- ^ mixiのページエンコーディングはEUC-JPであるが、正しくはそのMicrosoft拡張版であるCP51932であり、NEC特殊文字やIBM拡張文字が入力可能である。
- ^ 機種依存文字が原因で誤植が発生した事例も過去に存在する。
- ^ Firefox 1.5は、指定フォントにおいて表示できない文字であっても、表示可能な何らかのフォントがOSにインストールされている場合は、それを利用して何とか表示しようとする特徴がある。
- ^ IE 6.0/7.0(XP版)は、たとえ表示フォントにUnicodeのBMP以外の文字が登録されていても、その文字を表示せず、代わりに中黒「・」を表示する。
カテゴリ: 書きかけの節のある項目 | 文字コード