GB_18030
「GB18030」
GB 18030は中国政府の標準であり、 Information Technology —中国のコード化文字セットとして説明されており、中国のソフトウェアに必要な言語と文字のサポートを定義しています。GB18030は、 GB2312に代わる中華人民共和国(PRC)の公式文字セットの登録済みインターネット名です。 Unicode変換形式(つまり、すべてのUnicodeコードポイントのエンコーディング)として、GB18030は簡略化されたものと従来のものの両方をサポートします漢字。また、GB2312、 CP936、、GBK1.0などのレガシーエンコーディングとも互換性が GB 18030 GB18030エンコーディングレイアウト。「ハーフコード」は、4バイトコードとしてペアで使用されるコードを示します。
MIME / IANA GB18030 エイリアス
コードページ54936国際的ですが、主に中国人向けです
標準
GB 18030-2005、GB 18030-2000
分類
Unicode変換形式、拡張ASCII、 可変幅エンコーディング、CJKエンコーディング
延長
EUC-CN、GBK
変換/エンコード
ISO 10646(Unicode)
前任者 GBK、GB2312 ^ ASCIIバイトはトレイルバイトとして表示される可能性があるため、厳密な意味ではありません。
この規格には、「GB18030文字エンコード」に加えて、サポートする必要のあるスクリプト、フォントのサポートなどに関する要件が含まれています。
コンテンツ
1 歴史
2 国家標準として
3 マッピング
4 サポート
4.1 エンコーディング 4.2 グリフ
5 も参照してください
6 ノート
7 参考文献
8 外部リンク
歴史
参照:
GB 2312、
GBK(文字エンコード)、および
コードページ1386
GB18030文字セットは、正式には「中国国家標準GB 18030-2005:情報技術-中国語でコード化された文字セット」と呼ばれます。GBは、中国語で国家標準を意味するGuójiāBiāozhǔn(国家✓准)の略です。この規格は、2005年11月8日に北京で開催されたChinaStandardPressによって発行されました。規格の一部のみが必須です。 2006年5月1日以降、中国で販売されているすべてのソフトウェア製品に対して、必須サブセットのサポートが正式に義務付けられています。
GB18030バージョン間の異なるUnicodeマッピング
GBバイトシーケンス
Unicodeコードポイント
GB 18030-2000
GB 18030-2005
紀元前8年(ḿ) U+E7C7 U+ 1E3Fḿ
81 35 F4 37
U+ 1E3Fḿ U+E7C7
「中国国家標準GB18030-2000:情報技術-情報交換のための漢字コード化文字セット-基本セットの拡張」として知られる古いバージョンの標準は、2000年3月17日に公開されました。新しいバージョンでも同じであり、GBからUnicodeへのマッピングの唯一の違いは、GB 18030-2000が文字A8 BC(ḿ)を私用コードポイントU + E7C7にマッピングし、文字81 35 F4 37(グリフを指定せずに)をU+にマッピングしたことです。 1E3F(ḿ)、GB18030-2005はこれら2つのマッピング割り当てを交換します。 :534 Unicodeの更新、特にCJK統合漢字拡張Bの出現により、より多くのコードポイントが文字に関連付けられるようになりました。モンゴル文字や中国チベット文字(GB 16959 -1997 )など、中国の少数民族が使用する一部の文字およびGB/T 20542 -2006)も追加されました。これは、標準の名前変更を説明しています。
その祖先と比較して、GB 18030のUnicodeへのマッピングは、GBK 1.0でUnicode私用面コードポイント(U + E000–F8FF)が暫定的に割り当てられ、後でUnicodeでエンコードされた81文字に対して変更されました。これはGB18030の付録Eで指定されています。 :534 : 499GB18030-2005にはまだUnicodePUAにマップされている24文字が Ken Lundeによると、GB 18030の新しいリビジョンの2018ドラフトでは、最終的にこれらのマッピングが削除されます。
GBからUnicodeへのマッピングでの私用文字
GBバイトシーケンス
Unicodeコードポイント(青=私的使用)
GBK 1.0 :534
GB 18030 -2005
Unicode 4.1
A6 D9 :108 U+E78D U+ FE10︐6 DA U+E78E
U+ FE12︒6 DB U+E78F
U + FE11︑6 DC U+E790
U+ FE13︓6 DD U+E791
U+ FE14︔6 DE U+E792
U + FE15 :6 DF U+E793
U+ FE16︖6 EC U+E794
U+ FE17︗6 ED U+E795
U+ FE18︘6 F3 U+E796
U+ FE19︙
紀元前8年 U+E7C7 U+ 1E3Fḿ8 BF U+E7C8
U+ 01F9ǹ9 89 U+E7E7
U+ 303E〾9 8A U+E7E8
U+ 2FF0⿰9 8B U+E7E9
U+ 2FF1⿱9 8C U+E7EA
U+ 2FF2⿲9 8D U+E7EB
U+ 2FF3⿳9 8E U+E7EC
U+ 2FF4⿴9 8F U+E7ED
U+ 2FF5⿵9 90 U+E7EE
U+ 2FF6⿶9 91 U+E7EF
U+ 2FF7⿷9 92 U+E7F0
U+ 2FF8⿸9 93 U+E7F1
U+ 2FF9⿹
A9 94 :173 U+E7F2 U+ 2FFA⿺9 95 U+E7F3
U+ 2FFB⿻E 50 U+E815
U+2E81 ⺁E 51 U+E816
U+20087 E 52 U+E817
U+20089 E 53 U+E818
U+200CC E 54 U+E819
U+2E84 ⺄E 55 U+E81A
U +3473㑳E 56 U+E81B
U+3447 㑇E 57 U+E81C
U+2E88 ⺈E 58 U+E81D
U+2E8B ⺋E 59 U+E81E
U+9FB4 龴E 5A U+E81F
U+359E 㖞E 5B U+E820
U+361A 㘚E 5C U+E821
U+360E 㘎E 5D U+E822
U+2E8C ⺌E 5E U+E823
U+2E97 ⺗E 5F U+E824
U+396E 㥮E 60 U+E825
U+3918 㤘E 61 U+E826
U+9FB5 龵E 62 U+E827
U+39CF 㧏E 63 U+E828
U+39DF 㧟E 64 U+E829
U+3A73 㩳E 65 U+E82A
U+39D0 㧐E 66 U+E82B
U+9FB6 龶E 67 U+E82C
U+9FB7 龷E 68 U+E82D
U+3B4E 㭎E 69 U+E82E
U+3C6E 㱮E 6A U+E82F
U+3CE0 㳠E 6B U+E830
U+2EA7 ⺧E 6C U+E831
U+215D7 E 6D U+E832
U+9FB8 龸E 6E U+E833
U+2EAA ⺪E 6F U+E834
U+4056 䁖E 70 U+E835
U+415F 䅟E 71 U+E836
U+2EAE ⺮E 72 U+E837
U+4337 䌷E 73 U+E838
U+2EB3 ⺳E 74 U+E839
U+2EB6 ⺶E 75 U+E83A
U+2EB7 ⺷E 76 U+E83B
U+2298F E 77 U+E83C
U+43B1 䎱E 78 U+E83D
U+43AC 䎬E 79 U+E83E
U+2EBB ⺻E 7A U+E83F
U+43DD 䏝E 7B U+E840
U+44D6 䓖E 7C U+E841
U+4661 䙡E 7D U+E842
U+464C 䙌E 7E U+E843
U+9FB9 龹E 80 U+E844
U+4723 䜣E 81 U+E845
U+4729 䜩E 82 U+E846
U+477C 䝼E 83 U+E847
U+478D 䞍E 84 U+E848
U+2ECA ⻊E 85 U+E849
U+4947 䥇E 86 U+E84A
U+497A 䥺E 87 U+E84B
U+497D 䥽E 88 U+E84C
U+4982 䦂E 89 U+E84D
U+4983 䦃E 8A U+E84E
U+4985 䦅E 8B U+E84F
U+4986 䦆E 8C U+E850
U+499F 䦟E 8D U+E851
U+499B 䦛E 8E U+E852
U+49B7 䦷E 8F U+E853
U+49B6 䦶E 90 U+E854
U+9FBA 龺E 91 U+E855
U+241FE E 92 U+E856
U+4CA3 䲣E 93 U+E857
U+4C9F 䲟E 94 U+E858
U+4CA0 䲠E 95 U+E859
U+4CA1 䲡E 96 U+E85A
U+4C77 䱷E 97 U+E85B
U+4CA2 䲢E 98 U+E85C
U+4D13 䴓E 99 U+E85D
U+4D14 䴔E 9A U+E85E
U+4D15 䴕E 9B U+E85F
U+4D16 䴖E 9C U+E860
U+4D17 䴗E 9D U+E861
U+4D18 䴘E 9E U+E862
U+4D19 䴙E 9F U+E863
U+4DAE 䶮EA0 U+E864
U+9FBB 龻
国家標準として
GB 18030-2005の必須部分は、1バイトと2バイトのエンコーディング、およびCJK統合漢字拡張Aの4バイトのエンコーディングで構成されます。暫定的なプライベート割り当てを含むこのサブセットの対応するUnicodeコードポイントは、完全にBMPに :3 これらの部品は、完全に必須のGB18030-2000に対応しています。 :2
ほとんどの主要なコンピューター会社は、バイナリ形式とOS呼び出しで使用するための主要な形式としてUnicodeのいくつかのバージョンをすでに標準化しています。ただし、ほとんどの場合、Unicode 1.0で最初に定義されたBMPのコードポイントのみがサポートされていました。これは65,536コードポイントのみをサポートし、多くの場合、 UCS-2として16ビットでエンコードされていました。
Unicodeをサポートするソフトウェアの歴史的な重要性の動きの中で、中国は特定のコードポイントのサポートを義務付けることを決定しました BMPの外。これは、ソフトウェアが文字を16ビットの固定幅エンティティ( UCS-2 )として扱うことを回避できないことを意味します。したがって、最も一般的な選択肢である可変幅形式( UTF-8やUTF-16など)でデータを処理するか、より大きな固定幅形式( UCS-4やUTF-32など)に移行する必要が )。Microsoftは、Windows2000でUCS-2からUTF-16に変更しました。
マッピング
GB 18030は、1(ASCII)、2(拡張GBK)、または4バイト(UTF)エンコーディングを定義します。2バイトコードはルックアップテーブルで定義されますが、4バイトコードはUCSでエンコードされていない部分を埋めるために順番に(したがってアルゴリズム的に)定義されます。GB 18030は、 GBKの悪い面を継承しています。特に、GB18030シーケンスでASCII文字を安全に見つけるために特別なコードが必要です。
GB 18030エンコーディング3 252 GB 18030
コードポイント Unicode バイト1(MSB)
バイト2
バイト3
バイト400–7F 128 0000–007F 80 —
無効 81–FE 40– FEを除く7F
23 940 0080–FFFFを除くD800– DFFF
81–84 30–39 81–FE 30–39 39 420
85 —(12600)_
将来の文字拡張のために予約済み
86–8F —(126 000)
将来の表意文字拡張のために予約済み
未割り当て — D800– DFFF
90–E3 30–39 81–FE 30–39 1 048 576 10000–10FFFF
E4–FC —(315 000)
将来の標準拡張のために予約済み
FD–FE —(25 200)
ユーザー定義のFF — 無効 合計
1 112 064
1バイトおよび2バイトのコードポイントは、基本的に、ユーロ記号、割り当てられていない/ユーザー定義のポイントのPUAマッピング、および垂直句読点を含むGBKです。4バイト方式は、それぞれ2バイトの2つのユニットで構成されていると考えることができます。各ユニットの形式はGBKの2バイト文字と似ていますが、2番目のバイトの値の範囲は0x30〜0x39(10進数のASCIIコード)です。前と同じように、最初のバイトの範囲は0x81から0xFEです。これは、GBKに対して安全な文字列検索ルーチンは、GB18030に対しても合理的に安全である必要があることを意味します(基本的なバイト指向の検索ルーチンがEUCに対して合理的に安全であるのとほぼ同じ方法です)。
これにより、合計1,587,600(126×10×126×10)の可能な4バイトシーケンスが得られます。これは、Unicodeの1,112,064(17×65536-2048サロゲート)の割り当て、予約、および文字以外のコードポイントをカバーするのに十分です。
残念ながら、問題をさらに複雑にするために、4バイトのシーケンスとそれに対応するコードポイントの間で変換する簡単なルールはありません。代わりに、コードは、他の方法でマップされていないUnicodeコードポイントにのみ順番に割り当てられます(最初のバイトには最上位部分が含まれ、最後のバイトには最下位部分が含まれます) 。例:
U + 00DE(Þ)81 30 89 37U + 00DF(ß)81 30 89 38U + 00E0(à)A8 A4U + 00E1(á)A8 A2U + 00E2(â)81 30 89 39U + 00E3(ã)81 30 8A 30
オフセットテーブルは、コードポイントを効率的に変換するためにGB18030のWHATWGおよびW3Cバージョンで使用されます。 ICU とglibcは、同様の範囲定義を使用して、大きなシーケンシャルブロックでスペースを浪費しないようにします。
サポート
は、macOSに関する情報で拡張する必要が
エンコーディング
GB18030サポートパッケージがインストールされている場合、Windows2000はGB18030エンコーディングをサポートできます。WindowsXPはそれをネイティブにサポートできます。オープンソースのPostgreSQLデータベースは、UTF-8を完全にサポートすることにより、つまりUTF-8との間で変換することにより、GB18030をサポートします。同様に、Microsoft SQL Serverは、UTF-16との間の変換によってGB18030をサポートします。
より具体的には、WindowsでGB18030エンコーディングをサポートするということは、コードページ54936MultiByteToWideCharがとによってサポートされることを意味しWideCharToMultiByteます。マッピングの下位互換性により、GB18030の多くのファイルは、コードページ54936がサポートされていない場合でも、レガシーコードページ936、つまりGBKとして実際に正常に開くことができます。ただし、これは、問題のファイルにGBK文字のみが含まれている場合にのみ当てはまります。ファイルにGBKに存在しない文字が含まれている場合、ロードは失敗するか、破損した結果になります(例については§技術的な詳細を参照してください)。
ほとんどのLinuxディストリビューションで使用されている文字コーデックライブラリであるGNUglibcのgconvは、2.2以降のGB18030-2000および2.14以降のGB18030-2005をサポートしています。 glibcには、ラウンドトリップ変換を実現するために、GB18030-2005の非PUAマッピングが特に含まれています。 GNU libiconvは、 Cygwinのような非glibc UNIXライクな環境で頻繁に使用される代替のiconv実装であり、バージョン1.4以降のGB18030をサポートしています。
グリフ
Windows用のGB18030サポートパッケージには、2つの中国語フォントSimSun-18030とNSimSun-18030を組み合わせたTrueTypeフォントコレクションファイルであるSimSun18030.ttcが含まれています。SimSun 18030フォントには、Unicode 2.1のすべての文字に加えて、Unicode CJK統合漢字拡張Aブロックで見つかった新しい文字が含まれていますが、その名前にもかかわらず、GB 18030でエンコードされたすべての文字のグリフは含まれていません(すべて(約100万)U +10FFFFまでのUnicodeコードポイントはGB18030としてエンコードできます。GB18030準拠認証では、必須(2バイトおよびCJK Ext。A)の中国語部分のグリフの正しい処理と認識のみが必要です。 :4 それにもかかわらず、標準のPUA文字の要件により、この実装が妨げられています。
HANNOM やHanazonoMincho などの他のCJKフォントファミリは、SimSun-18030やSimSun(Founder Extended)よりもUnicode CJK拡張ブロックのカバレッジを広く提供しますが、Unicode5.0で定義されたすべてのコードポイントをサポートするわけではありません。 0どちらか。
も参照してください
Guobiaoコード CJK 中国語の文字エンコード
Unicodeエンコーディングの比較
ノート
^ GB18030ではサロゲートが省略されていることに注意して#Mappingを参照。
^ ユーロ記号は例外であり、Microsoftの新しいバージョンのCP936 / GBKでは0x80のシングルバイトコードが、GB18030ではA2E3の2バイトコードが与えられています。
^ コードポイントには、66個のUnicode非文字が含まれています。
^ ICUは、このコードポイントが有効であると誤って見なしているようです。これは、公開されている標準のどちらのバージョンにもありません。WHATWGは、このバイトをユニバーサルgb2312-gbk-gb18030デコーダーのU + 20AC(GBKユーロ記号)に割り当てます。
^ この範囲のより細かい分割については、 GBK(文字エンコード)§エンコードを参照して ^ 一部のコードポイントは2バイト(上の行)でエンコードされ、他のコードポイントは4バイト(下の行)でエンコードされます。U + FFFFは、2005年標準の239ページにあるようにエンコードされBMPマッピングに関する84 31 A4 39限り提供されてい84 39 FE 39 ^ これらは代理コードポイントです; UTF-16エンコーディング以外では意味がありません ^ さらに、U+E7C7とU+1E3Fのエンコードが交換されたため、U + E7C7は、U + 1E3E(81 35 F4 36)とU+の間で8135F437として標準の2005年版でエンコードされます。 1E40(81 35 F4 38)。したがって、2000エディションのみが、4バイトコードを他の方法ではマップされていないコードポイントに割り当てる際に完全にシーケンシャルになります。
参考文献
^ Anthony Fok(2002-03-15)。「GB18030のIANA文字セット登録の適用」。IANA文字セットの登録。
^ CESI(2009-07-08)。「GB18030符合性问与回答」 [GB18030コンプライアンスFAQ]。CESI認証センター。2016年9月28日にオリジナルからアーカイブされました。GB18030-2005强制部规定的-2005强制性部分规定的適用汉字字文字 b)必須セットの文字のエンコーディングを認識します。]
代替URL ^ 中国標準化管理委員会(SAC)(2005-11-18)。GB 18030-2005:情報技術-中国語でコード化された文字セット。
^ 「GB18030のUnicodeFAQ」。ICUプロジェクト。
^ GB 18030-2000:情報技術-情報交換のための漢字コード化文字セット-基本セットの拡張。中国標準化管理委員会(SAC)。2000-03-17。
^ Lunde、Ken(2006)。「GB18030:2005のL2/06-394アップデート」。Unicode技術委員会ドキュメントレジストリ。
^ ランディ、ケン。「gb18030が改訂された場合は、エンコーディング標準の調整を検討してください・問題#27・whatwg/encoding」。GitHub。さらに、NotoCJKおよびSourceHanフォントのコンテキストでPUAコードポイントをサポートすることは、主にPan-CJK書体であり、そのようなコンテキストでのPUAの使用は非常に危険であるため、まったく初心者ではありません。 CESIの友達が、数日前の最終ドラフトのテキストを私と共有してくれました。これにより、24文字のPUA要件が解除されていることが確認されました。
^ 「グループ:GBK外字」。グリフウィキ。
^ ケン・ランディ。CJKV情報処理。O’Reilly Media、Inc. ISBN 978-0-596-51447-1。
^ abGB18030-2000とUnicodeの間の信頼できる マッピングテーブル。ICU –Unicodeの国際コンポーネント。2001-02-21。2016年9月4日にアクセス。
^ 「エンコーディング標準#gb18030-インデックス」。WHATWG 。
^ マイクロソフト。「GB18030サポートパッケージ」。Microsoft。2012年6月5日にオリジナルからアーカイブされました。
^ ドレッパー、ウルリッヒ。「glibc用のGB18030iconvモジュール」。glibcgit 。
^ ドレッパー、ウルリッヒ。「GB18030を2005バージョンに更新」。glibcgit 。
^ ワイマー、フロリアン; オドネル、カルロス。「GB18030テーブルのステータス(#19575)」。SourcewareBugzilla 。
^ 「ニュース–libiconv.git–libiconv」。git.savannah.gnu.org 。
^ VietUnicode。”/hannom”。sourceforge.net 。
^ 「花園フォント」。fonts.jp 。
外部リンク
GB18030のIANA文字セット登録
「– -2000の英語の要約」 (PDF)。2001年2月16日。2017-02-02のオリジナル (PDF)からアーカイブ。
GB2312およびGBK(Sun / Internet Archive)からの進化を含むGB18030の紹介
ICUデータ
GB18030:メガコードページ(IBM DeveloperWorks)
GB18030-2000とUnicode間の信頼できるマッピングテーブル
ICUコンバータエクスプローラー:GB18030
Unicodeチャート
Unicode CJK統合漢字拡張A(PDF、1.5 MB)
Unicode CJK統合漢字拡張B(PDF、13 MB)
Microsoftによる中国語、中国チベット、イー、モンゴル、タイ語フォントを含むWindows 2000 / XP用GB18030サポートパッケージ(インターネットアーカイブ)
SILのフリーウェアフォント、エディタ、およびドキュメント