Gigaoctet 18030

Unicode capable Le GB18030 est le nom Internet inscrit pour le jeu de caractères officiel du République populaire de Chine (RPC) remplaçant le GB2312 . Ce jeu de caractères s'appelle formellement le " ; Norme nationale chinoise gigaoctet 18030-2000 : Technologie de l'information -- Jeu de caractères codé d'idéogrammes chinois pour l'échange de l'information -- Prolongation pour le set" de base ;. Le le gigaoctet abrège le Guójiā Biāozhǔn (国家标准), qui signifie la norme nationale de dans le Chinois. La norme a été éditée par la presse standard de la Chine, le Pékin, le le 17 mars , le 2000 et le 20 novembre à jour , le 2000 . En date le du 1er août , le 2006 , soutien de ce jeu de caractères est officiellement obligatoire pour tous les logiciels vendus en RPC. En raison de son équivalence en Unicode, GB18030 soutient les caractères chinois traditionnels simplifiés par et .

GB18030 peut être considéré un format (c. un codage de transformation d'Unicode de de tous les points de code d'Unicode ) qui maintient la compatibilité avec un jeu de caractères de legs. En d'autres termes, c'est un équivalent chinois du UTF-8 (qui maintient la compatibilité avec l'ASCII). Comme UTF-8, GB18030 est un superjeu du ASCII et peut représenter la gamme entière des points de code d'Unicode ; en outre, c'est également un superjeu de GB2312. GB18030 maintient également la compatibilité avec le GBK , la version prolongée de Microsoft de GB2312, excepté l'euro signe qui est donné un code simple de byte de 0x80 dans les versions postérieures de Microsoft de GBK et un code à deux bits d'A2 E3 dans GB18030. < ! --de autres exceptions ? n'importe qui assez suicidaire pour vérifier ? -->

Une partie des données de cartographie est d'une table de consultation (pareillement à GBK). Le repos est calculé algorithmiquement. Malheureusement il hérite également des mauvais aspects des normes de legs qu'il a basées dessus (spécialement ayant besoin de code spécial pour trouver sans risque des caractères d'ASCII dans un ordre GB18030).

La plupart des sociétés informatiques importants avaient déjà normalisé sur une certaine version d'Unicode comme le format primaire pour l'usage dans leurs formats binaires et appels d'OS. Cependant, ils la plupart du temps avaient seulement soutenu les points de code dans le BMP à l'origine défini dans Unicode 1.0, qui a soutenu seulement 65.536 codepoints et a été souvent codé dans 16 bits comme UCS-2 .

Dans un mouvement d'importance historique pour le software support Unicode, le RPC a décidé d'exiger l'appui de certains points de code en dehors du BMP. Ceci signifie que le logiciel peut plus ne partir avec traiter des caractères en tant que 16 entités de largeur fixes par bit ( UCS-2 ). Par conséquent elles doivent l'un ou l'autre processus les données dans un format variable de largeur (tel que UTF-8 ou UTF-16 ), qui sont les choix les plus communs, ou se déplacent à un plus grand format fixe de largeur (tel que UCS-4 ou UTF-32 ). Microsoft a apporté la modification d'UCS-2 à UTF-16 avec le Windows 2000.

Appui GB18030

Codage

Le Windows 2000 peut soutenir le codage GB18030 si le paquet de soutien GB18030 est installé. Windows Xp peut le soutenir à la façon des indigènes.

Plus spécifiquement, le soutien du codage GB18030 sur Windows signifie que la page de code 54936 est soutenue par MultiByteToWideChar et WideCharToMultiByte. En raison de la compatibilité ascendante de la cartographie, beaucoup de dossiers dans GB18030 peuvent être réellement ouverts avec succès comme page de code de legs 936, celui est GBK, même si la page de code 54936 n'est pas soutenue. Cependant, c'est seulement vrai quand le dossier en question ne contient aucun caractère qui n'existe pas dans la page de code 936, incluant la plupart des caractères appartenant aux manuscrits non-Chinois (voir le au-dessous de pour des exemples).

Glyphs

Le paquet de soutien GB18030 contient SimSun18030.ttc, un dossier de collection de police de TrueType qui combine deux polices chinoises, SimSun-18030 et NSimSun-18030.

La police de SimSun 18030 de inclut tous les caractères dans Unicode 2.1 nouveaux caractères positifs trouvés dans la section de la prolongation A d'idéographes unifiée par CJK d'Unicode, mais en dépit de son nom, elle ne contient pas des glyphs pour tous les caractères du gigaoctet 18030. Noter que tous les (environ million) points de code d'Unicode jusqu'à U+10FFFF peuvent être codés comme gigaoctet 18030, par conséquent « une police qui approuve pleinement le gigaoctet 18030 » signifierait une police qui contient des glyphs pour tous les caractères d'Unicode, non seulement pour CJK ceux. HAN NOM A et HAN NOM B sont des polices libres, qui incluent tous les caractères dans la prolongation A et la prolongation B, plus approfondie que SimSun-18030, ou même que le Simsun (fondateur prolongé) , mais elles ne soutiennent pas tous les points de code définis dans Unicode 5.

Détails techniques

L'arrangement de quatre octets peut être considéré en tant que se composer de deux unités, chacune de deux bytes. Chaque unité a un format semblable à un caractère à deux bits de GBK mais avec une gamme des valeurs pour le deuxième byte de 0x30-0x39 (les codes de ASCII pour les chiffres décimaux). Le premier byte a la gamme 0x81 à 0xFE, en tant qu'avant. Ceci signifie qu'une routine de la recherche de chaîne de caractères qui est sûre pour GBK devrait également être raisonnablement sûre pour GB18030 (plus ou moins de la même façon qui une routine de recherche orientée vers le byte du de base est raisonnablement sûre pour le EUC ).

Ceci donne un total de 1.600 (126*10*126*10) des 4 ordres possibles de byte, qui est facilement suffisant pour couvrir le des points de code de s 1.046 (des substituts de 17 × 65536 - 2048 d'Unicode '- 18 noncharacters).

Malheureusement, pour compliquer plus loin des sujets là n'être aucune règle simple à traduire entre un ordre et son point de code correspondant de 4 bytes. Au lieu de cela, les codes sont séquentiellement assigné (avec le premier byte contenant la partie la plus significative et le bout la moindre partie significative) le seulement aux points de code d'Unicode qui ne sont tracés d'aucune autre façon. Par exemple :

→ 81 D'U+00DE (Þ) 30 89 37 → 81 d'U+00DF (ß) 30 89 38 → U+00E0 (à) A8 A4 → U+00E1 (á) A8 A2 → U+00E2 (â) 81 30 89 39 → U+00E3 (ã) 81 30 8A 30

Voir également

GBK
Code de Guobiao de
CJK
Codage de caractère chinois de
Comparaison de des codages d'Unicode

.

Random links:Église de la nativité | Tinus Osendarp | Pape Benoît XV | Perte de consortium | Jerry Horton | GB_18030