MacJapanese

MacJapanese (Mac OS Japanese) とは



MacJapanese、またはMac OS Japaneseは、AppleがShift_JISを独自に拡張した文字コードです。主にClassic Mac OSのバージョン7.1から9.xまでの間で利用されていました。この文字コードは、日本の文字をコンピュータ上で表現するために重要な役割を果たしました。

文字コードの詳細



MacJapaneseは、IANAに登録されていないため、XMLやMIMEなどでは`x-Mac-Japanese`という文字列が用いられます。Apple製のiPodもこの名前を認識します。

また、MacJapaneseをUnicodeにマッピングし、UTF-16UTF-8などのUnicode用の文字符号化方式で符号化する方法も存在します。macOSのファイル名などでこの方法が用いられますが、MacJapanese固有の文字は私用領域(Private Use Area)を使用するため、macOS以外の環境との互換性はありません。

文字セット


MacJapaneseの文字コードは、1バイト文字と2バイト文字で構成されています。

1バイト文字
0x00から0x7Fと0xA1から0xDFの部分は[JIS X 0201]]に準拠しています。ただし、0x7EにはASCIIと同様に[[チルダ]が割り当てられています。
以下の記号が追加されています。
0x80: 半角バックスラッシュ '\' (U+5C)
0xA0: ノーブレークスペース (NBSP) (U+A0)
0xFD: 著作権記号 '©' (U+A9)
0xFE: 商標記号 '™' (U+2122)
0xFF: 半角の欧文用三点リーダー '...' (halfwidth horizontal ellipsis)

2バイト文字
2バイトで表される文字は、JIS X 0208-1990を基にしています。さらに、0x8540から0x886Dに「Apple標準システム外字」が、0xEB41から0xED96までに縦書き用の文字が追加されています。
Apple標準システム外字のうち、Unicodeに対応する文字も存在します。

縦書き用の文字


縦書き用文字には、括弧などの記号を回転させたものや、句読点と小書きの仮名を右上に寄せたものがあります。これらは、DTPなどの縦書き対応アプリケーションで、文字を変換して描画APIに渡すために使用されました。情報交換に使われることは稀です。

例: 「︰」、「︙」、「︵」、「︶」、「︻」、「︼」など。三点リーダーはU+FE19に収録されていますが、MacJapaneseのコードポイントとは互換性がありません。

他の文字コードとの対応



全角文字に関して、MacJapaneseと他の文字コードとの対応は以下の区分に分けられます。

区分1: NEC特殊文字にある文字 (73字)

MacJapaneseとWindows-31J、Shift_JIS-2004では異なるコードポイントが割り当てられているため、機種依存文字として文字化けの原因となります。
例: 「⑫」はWindows-31JやShift_JIS-2004では0x874Bですが、MacJapaneseでは「㈹」が割り当てられています。
Unicodeでは同じコードポイントが与えられているため、文字化けは発生しません。

区分2: NEC特殊文字になく、JIS X 0213にある文字 (53字)

区分1と同様に、Shift_JIS-2004で表現するとMacJapaneseとは異なるコードポイントとなるため、文字化けの原因となります。

区分3: NEC特殊文字にもJIS X 0213にもなく、Unicodeにある文字 (109字)

Unicodeのエンコーディング(UTF-16UTF-8など)と、対応するグリフを持つフォントを使用すれば、正常に情報交換が可能です。
MacJapaneseからUnicodeに変換する際には、「UnicodeとMacJapaneseの変換テーブル」が必要になります。

区分4: NEC特殊文字にもJIS X 0213にもUnicodeにもないが、Unicodeでは文字合成で表せる文字 (3字)

囲み文字であり、記号用ダイアクリティカルマークU+20DDを用いて文字合成で表現するか、CSSのOpenType feature tagで表現します。
対応していない環境では、合成されずに表示されることがあります。

区分5: NEC特殊文字にもJIS X 0213にもUnicodeにもないが、同型・同用途の文字がUnicodeにある文字 (7字)

Unicodeのエンコーディングと対応するフォントを用いて情報交換できますが、コードポイントは異なります。
MacJapaneseからUnicodeへ変換する場合は区分7に準じます。

区分6: NEC特殊文字にもJIS X 0213にもUnicodeにもないが、同型の別字がJIS X 0213Unicodeにある文字 (2字)

区分5と同様に、別のコードポイントに同型の文字があります。
MacJapaneseからUnicodeへ変換する場合は区分7に準じます。

区分7: NEC特殊文字にもJIS X 0213にもUnicodeにもなく、同型・同用途の文字もUnicodeにない文字 (9字)

文字合成や異体字タグを利用して表現します。
* Unicodeの私的領域(U+F860、U+F861、U+F862、U+F87A、U+F87E、U+F87F)を使用しているため、対応していない環境では正しく表示されません。

macOSでの対応



macOSでは、MacJapaneseは「Shift_JIS (Mac)」または「日本語 (Mac OS)」として表示されます。macOS付属フォントでは、OsakaのみがMacJapaneseに完全対応しています。ヒラギノUnicodeAdobe-Japan1文字コレクションに対応しており、Unicodeを扱えるアプリケーションでは区分5〜7の文字を除いて表示できます。CIDを扱えるアプリケーションでは、半角三点リーダー以外の全ての文字を表示可能です。

iPodでの対応



iPodも、MacJapaneseを`x-Mac-Japanese`として認識します。

まとめ



MacJapaneseは、Classic Mac OSにおいて重要な役割を果たした文字コードです。他の文字コードとの互換性やUnicodeへの変換には注意が必要ですが、その歴史的背景や技術的特徴を理解することは、文字コードの世界をより深く知る上で有益です。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。