2020年2月20日 4:55 AM

Windows と日本語のテキストについて

今回は、Windows 10 やクラウド環境への移行によりお問い合わせが増えている Windows 上での日本語のテキストの取り扱いについてお伝えしたいと思います。

Windows は多言語に対応しており、わずかな設定の変更で表示言語や入力言語を追加する等のカスタマイズが可能です。どの言語の Windows もバイナリは共通であり、特定の言語に依存しないよう設計されています。言語共通のバイナリに日本語の言語リソース (言語パックや日本語 IME、日本語フォント) を組み合わせたものがいわゆる「日本語版 Windows」であり、日本語版として入手した Windows を他の言語版相当に変更することも容易に可能となっています。また、その逆も同様に可能です。他の言語版の Windows で日本語を入力・表示することも、とても簡単にできます。

現代では、テキスト データをやり取りする行為は特別なものではなく、その主体もインターネットを経由したものにシフトしてきました。OS およびアプリケーションの進歩に伴い、以前と比較すると文字化け等テキストに特化したトラブルは少なくなってきましたが、システム間の連携や、人名・地名等文字の形を正確に表す必要のあるビジネスにおける使用では下記の内容を参考にしていただければ幸いです。

Unicode の必要性について

前述いたしました Windows の強力な多言語対応の地盤と言っても過言ではないのが、世界中の文字を収録している業界標準の文字コード、Unicode への対応です。Windows は非常に初期のバージョンから Unicode に準拠して設計・開発され、その歴史は 20 年を超えます。Windows のバージョンが新しくなるごとに、新しく Unicode に収録された文字を使用できるよう OS のコア コンポーネントである描画のロジックや、IME の辞書およびフォント等も細かな更新を繰り返しています。

Unicode 以前は、各国の言語ごとに様々な文字コードが定義されていました。そのため、一つのドキュメント内で複数の言語を使用することは非常に困難であり、OS やアプリケーションも文字コードの制約を受けていました。ネットワークを使用してテキストをやり取りする際、受信者側の文字コード選択を考慮したり、複数の文字コード間で相互に変換可能な文字だけを使用してデータを作成する等が日常的に行われていました。現在、環境を考慮せずとも意図したテキストを自由に送ることができるようになった背景には、Unicode が大きく寄与しています。

日本語の文字のみを使用している場合も、Unicode とは密接な関係があります。JIS 漢字コードとして定義されている文字の中には、Unicode でのみ表現可能な文字が多数定義されています。また、常用漢字表に収録されている文字の一部にも、Unicode を使用しなければ表現できない文字が存在しています。ご存じの通り、日本語専用の文字コードとしては、Windows 上でも Shift-JIS を使用することができ、そのようなアプリケーションとの互換性も可能な限り維持していますが、Unicode でのみ取り扱うことのできる文字が、そのようなアプリケーションに入力された場合は、いわゆる文字化けや文字抜けが発生することとなります。
最近では、2019 年 5 月より施行された新元号の合字「㋿」(U+32FF) が新しい Unicode 文字として追加されており、旧来より運用されている、例えば Visual Basic 6.0 で開発されたアプリケーションのように Unicode 非対応のアプリケーションで、この合字を使用できないというお問い合わせを非常に多数いただいております。一度、運用されているアプリケーションで新元号の合字を入力し、対応状況の目安とされることをお勧めします。

外字の使用について、クラウドへの移行も見据えた長期的戦略を

詳細は後述いたしますが、Unicode を使用することにより、人名地名に使用される漢字等を正確に表現するニーズにも対応することができます。従来、このような用途では外字を使用するケースが多くありましたが、現在「外字でなければ表示できない文字」をお使いのお客様は限定的です。Unicode に定義されており、Windows に同梱のフォントを使用して標準の状態でも表示可能な文字を、外字にいわば「再定義」してお使いのお客様が非常に多くいらっしゃいます。

私たちマイクロソフトは、従来作成されたドキュメントに外字のコードが埋め込まれていたり、Unicode に対応していないアプリケーションで多くの漢字や記号を扱う必要性について日本のお客様からお伺いすることも多く、外字が互換性のために重要であることを理解しています。一方で、以前の記事 Windows 診断データについてでもお伝えした通り、現在外字を使用している国としては日本が突出しており、外字が既にレガシーな機能であることもお伝えしなければなりません。

Windows において外字は、作成されたコンピューター上での使用のみをサポートしています。文字の描画は OS の根幹 (カーネル) 部分で行われる処理も多く、作成された外字の他のコンピューターでの動作は保証しておりません。以前より一定数のお問い合わせを頂戴しておりますが、他の環境で作成された外字をコピーして使用したことが原因となり、セキュリティ上の問題や、最悪の場合はコンピューターのハングやブルースクリーンによるクラッシュに至る場合があります。このような場合、外字の再作成以外に回避策がないこともあります。詳細は、弊社サポート技術情報のご確認をお願いいたします。

意外な盲点ですが、外字を使用していることや、テキストを Shift-JIS で保存していることがクラウド移行の大きな障壁となるケースが急増しています。SaaS や PaaS への移行プロジェクトの終盤に外字を使用していることが明らかとなり、サーバー側に外字を登録することができないことからプロジェクト自体が存続できなくなるケースや、やむを得ず IaaS へ仮想マシンとしての移行へ切り替えたものの、当初見込んでいたメリットが目減りしてしまうケースも散見されます。Web アプリケーションや XML では Unicode にのみ対応しているシステムも多く、Shift-JIS のデータをそのまま移行できないことも多くあります。クラウドへの移行や、システムの刷新も見据え、テキスト データの観点でも戦略的・計画的にモダンなフォーマットへの移行と併せて、段階的な外字の削減についてご検討をお願いいたします。

JIS90 字形と異体字について

Windows における日本語環境は、過去に何度か大きなターニング ポイントを迎えています。
Windows Vista では JIS2004 への準拠が、Windows 8 では Unicode IVS による異体字のサポートが行われました。JIS2004 への対応により「辻」の之繞 (しんにょう) の点の数など漢字の字形が一部変更され、当時大きな影響を受けたお客様もいらっしゃるかと思います。Windows 10 への移行にあたり最近もお問い合わせのボリュームが増加していますが、Windows XP まで使用されていた JIS90 準拠の旧字形は、Windows 8 以降、Unicode IVS を使用することにより異体字として標準の状態で表示・入力が可能となっており、排他的ではなくドキュメント内で自由に JIS2004 および JIS90 の字形を使い分けることが可能となっています。

異体字がサポートされたことにより、「渡邊」の「邊」や「齋藤」の「齋」など、字形に多くのバリエーションを持つ漢字も正確に表すことができるようになっています。これには、Unicode IVS のサポートに加え、各字形のバリエーションを持つフォントが必要となりますが、Windows 8.1 以降標準でご使用いただける游フォントは、Adobe-Japan-1-7 文字セットに対応し、字形の差異にセンシティブな業務にも耐えうる非常に多くの字形を保持しています。游フォントは macOS にも同梱されており、非常にリッチな日本語環境を OS を超えた高い互換性で実現しています。

なお、 Microsoft IME においては、既定の状態では異体字をかな漢字変換時の候補として表示しません。変換文字制限を緩和していただくことにより入力可能となります。この制限はグループ ポリシーやコマンドを使用して組織で一括して設定いただくことも可能です。変換文字制限がどのように設定されているかにかかわらず IME パッド等からは入力が可能であり、ドキュメントや Web ページに含まれている異体字も表示可能です。他社様の IME をご使用の場合も、メジャーな製品では異体字をサポートしていることを確認しております。
人名や地名にセンシティブな業務でご利用のお客様は、国の文字情報基盤整備事業の成果物として無償で提供されている IPAmj 明朝フォントのご使用もご検討ください。同フォントが持つ 58,000 超のすべての文字を使用するには、Unicode IVS の使用が必要となります。

最後に

私たちマイクロソフトは、日本のお客様の声を製品に反映し、Windows における日本語環境の継続的な改善を行っています。今回ご紹介した例の他にも、Microsoft IME 自体の改善やユニバーサル デザインに対応した日本語フォントの段階的な追加、[メモ帳] アプリケーションの標準の保存形式の UTF-8N 化などを既に実施しています。お客様の持つ膨大なテキスト データは、お客様にとって重要な資産であるという事実を忘れずに互換性にも最大限配慮を行っておりますが、インターネット上でのデータ交換やクラウド アプリケーション上での業務といった変革期を迎え、文字の世界においても本格的なモダナイゼーション (最新化) が要求されていることも事実です。モバイルおよびクラウドとのシームレスな連携、クラウドへのスムーズな移行のためにも、テキスト データに対する対応も忘れずにご準備いただけますと幸いです。

今後も日本のお客様に選ばれ、喜んで使っていただける製品とサービスの提供に尽力してまいります。引き続きのご愛顧を何卒よろしくお願い申し上げます。

参考公開情報:
Windows で外字エディタを使用して外字を作成する方法
https://support.microsoft.com/ja-jp/help/416747

OS 搭載の游書体について
http://www.jiyu-kobo.co.jp/os-installed-y/

IPAmj 明朝フォント
https://mojikiban.ipa.go.jp/1300.html