ES 18030

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar

GB 18030 es un estándar del gobierno chino, descrito como Tecnología de la información — Conjunto de caracteres codificados chinos y define el idioma requerido y el soporte de caracteres necesarios para el software en China. GB18030 es el nombre registrado en Internet para el conjunto de caracteres oficial de la República Popular China (RPC) que reemplaza a GB2312. Como formato de transformación Unicode (es decir, una codificación de todos los puntos de código Unicode), GB18030 admite caracteres chinos tradicionales y simplificados. También es compatible con codificaciones heredadas, incluidas GB2312, CP936 y GBK 1.0.

Además de la "codificación de caracteres GB18030", este estándar contiene requisitos sobre qué secuencias de comandos deben ser compatibles, compatibilidad con fuentes, etc.

El estándar actualizado GB18030-2022, es incompatible y tenía fecha de entrada en vigor el 1 de agosto de 2023. Se ha implementado ICU 73.2; y en Java 21, y con versiones anteriores de Java 8, 11, 17 (versiones LTS) y 20.0.2.

A partir de 2022, en términos de implementaciones de fuentes, "solo las fuentes en chino simplificado de Noto Sans CJK (Google), Source Han Mono (Adobe), y las familias tipográficas Source Han Sans (Adobe) ya cumplen con GB 18030-2022 Nivel de implementación 2 [..] Microsoft YaHei (Microsoft), Noto Serif CJK (Google), PingFang (Apple) y Source Han Serif (Adobe), al menos las versiones de noviembre de 2022, requieren una pequeña cantidad de adiciones de URO que están asociadas con el Nivel de implementación 1 para cumplir con GB 18030-2022 Nivel de implementación 2."

Historia

El juego de caracteres GB18030 se denomina formalmente "Estándar nacional chino GB 18030-2005: tecnología de la información: juego de caracteres codificados en chino". GB abrevia Guójiā Biāozhǔn (国家标准), que significa estándar nacional en chino. La norma fue publicada por China Standard Press, Beijing, el 8 de noviembre de 2005. Sólo una parte de la norma es obligatoria. Desde el 1 de mayo de 2006, se exige oficialmente la compatibilidad con el subconjunto obligatorio para todos los productos de software vendidos en la República Popular China.

Diferentes cartografías Unicode entre versiones GB 18030
GB byte
secuencia
Punto de código Unicode
GB 18030-2000 GB 18030-2005
A8 BC (ḿ)U+E7C7U+1E3F ḿ
81 35 F4 37U+1E3F ḿ U+E7C7

El 17 de marzo se publicó una versión anterior del estándar, conocida como "Estándar nacional chino GB 18030-2000: tecnología de la información: conjunto de caracteres codificados de ideogramas chinos para el intercambio de información; extensión para el conjunto básico"»., 2000. El esquema de codificación sigue siendo el mismo en la nueva versión, y la única diferencia en la asignación de GB a Unicode es que GB 18030-2000 asignó el carácter A8 BC (ḿ) a un punto de código de uso privado U+E7C7 y carácter 81 35 F4 37 (sin especificar ningún glifo) a U+1E3F (ḿ), mientras que GB 18030 -2005 intercambia estas dos asignaciones cartográficas. Ahora se asocian más puntos de código con caracteres debido a la actualización de Unicode, especialmente la aparición de la Extensión B de Ideógrafos Unificados CJK. Algunos caracteres utilizados por minorías étnicas en China, como los caracteres mongoles y tibetanos (GB 16959-1997 y GB/T 20542 -2006), también se han agregado, lo que explica el cambio de nombre de la norma.

En comparación con sus antecesores, la asignación de GB 18030 a Unicode se ha modificado para los 81 caracteres a los que se les asignó provisionalmente un punto de código de área de uso privado Unicode (U+E000–F8FF) en GBK 1.0 y que posteriormente se codificado en Unicode. Esto se especifica en el Apéndice E de GB 18030. Hay 24 caracteres en GB 18030-2005 que todavía están asignados a PUA Unicode.

En la actualización GB 18030-2022, los requisitos para que los caracteres se asignen a PUA se eliminaron por completo y todos los caracteres deben asignarse a sus puntos de código Unicode estándar. De estas, 18 asignaciones se actualizaron mediante intercambio de posición similar a lo que sucedió entre GBK y GB 18030. Los seis restantes mantuvieron las asignaciones de PUA de dos bytes, por lo que se necesita un cambio en la secuencia de 4 bytes para seguir las asignaciones que no son PUA. preferencia.

Personajes de uso privado en cartografías de GB a Unicode
GB byte
secuencia
Punto de código Unicode
GBK 1.0 GB 18030-2005 Unicode 4.1 GB 18030-2022
A6 D9U+E78DU+FE10 ,
A6 DAU+E78EU+FE12 .
A6 DBU+E78FU+FE11 ,
A6 DCU+E790U+FE13 :
A6 DDU+E791U+FE14 ;
A6 DEU+E792U+FE15 !
A6 DFU+E793U+FE16 ?
A6 ECU+E794U+FE17
A6 EDU+E795U+FE18
A6 F3U+E796U+FE19 ...
A8 BCU+E7C7U+1E3F ḿ
A8 BFU+E7C8U+01F9 ǹ
A9 89U+E7E7U+303E
A9 8AU+E7E8U+2FF0
A9 8BU+E7E9U+2FF1
A9 8CU+E7EAU+2FF2
A9 8DU+E7EBU+2FF3
A9 8EU+E7ECU+2FF4
A9 8FU+E7EDU+2FF5
A9 90U+E7EEU+2FF6
A9 91U+E7EFU+2FF7
A9 92U+E7F0U+2FF8
A9 93U+E7F1U+2FF9
A9 94U+E7F2U+2FFA
A9 95U+E7F3U+2FFB
FE 50U+E815U+2E81
FE 51U+E816U+20087 𠂇 U+E816
FE 52U+E817U+20089 𠂉 U+E817
FE 53U+E818U+200CC 𠃌 U+E818
FE 54U+E819U+2E84
FE 55U+E81AU+3473
FE 56U+E81BU+3447
FE 57U+E81CU+2E88
FE 58U+E81DU+2E8B
FE 59U+E81EU+9FB4
FE 5AU+E81FU+359E
FE 5BU+E820U+361A
FE 5CU+E821U+360E
FE 5DU+E822U+2E8C
FE 5EU+E823U+2E97
FE 5FU+E824U+396E
FE 60U+E825U+3918
FE 61U+E826U+9FB5
FE 62U+E827U+39CF
FE 63U+E828U+39DF
FE 64U+E829U+3A73
FE 65U+E82AU+39D0
FE 66U+E82BU+9FB6
FE 67U+E82CU+9FB7
FE 68U+E82DU+3B4E
FE 69U+E82EU+3C6E
FE 6AU+E82FU+3CE0
FE 6BU+E830U+2EA7
FE 6CU+E831U+215D7 𡗗 U+E831
FE 6DU+E832U+9FB8
FE 6EU+E833U+2EAA
FE 6FU+E834U+4056
FE 70U+E835U+415F
FE 71U+E836U+2EAE
FE 72U+E837U+4337
FE 73U+E838U+2EB3
FE 74U+E839U+2EB6
FE 75U+E83AU+2EB7
FE 76U+E83BU+2298F 𢦏 U+E83B
FE 77U+E83CU+43B1
FE 78U+E83DU+43AC
FE 79U+E83EU+2EBB
FE 7AU+E83FU+43DD
FE 7BU+E840U+44D6
FE 7CU+E841U+4661
FE 7DU+E842U+464C
FE 7EU+E843U+9FB9
FE 80U+E844U+4723
FE 81U+E845U+4729
FE 82U+E846U+477C
FE 83U+E847U+478D
FE 84U+E848U+2ECA
FE 85U+E849U+4947
FE 86U+E84AU+497A
FE 87U+E84BU+497D
FE 88U+E84CU+4982
FE 89U+E84DU+4983
FE 8AU+E84EU+4985
FE 8BU+E84FU+4986
FE 8CU+E850U+499F
FE 8DU+E851U+499B
FE 8EU+E852U+49B7
FE 8FU+E853U+49B6
FE 90U+E854U+9FBA
FE 91U+E855U+241FE 𤇾 U+E855
FE 92U+E856U+4CA3
FE 93U+E857U+4C9F
FE 94U+E858U+4CA0
FE 95U+E859U+4CA1
FE 96U+E85AU+4C77
FE 97U+E85BU+4CA2
FE 98U+E85CU+4D13
FE 99U+E85DU+4D14
FE 9AU+E85EU+4D15
FE 9BU+E85FU+4D16
FE 9CU+E860U+4D17
FE 9DU+E861U+4D18
FE 9EU+E862U+4D19
FE 9FU+E863U+4DAE
FE A0U+E864U+9FBB
Notas
a.^ Azul indica el área de uso privado
b.^ U+20087 𠂇 mapeado para 0x95329031 en GB 18030-2022
c.^ U+20089 𠂉 mapeado para 0x95329033 en GB 18030-2022
d.^ U+200CC 𠃌 mapeado para 0x95329730 en GB 18030-2022
e.^ U+215D7 𡗗 mapeado para 0x9536B937 en GB 18030-2022
f.^ U+2298F 𢦏 mapeado para 0x9630BA35 en GB 18030-2022
g.^ U+241FE 𤇾 mapeado para 0x9635B630 en GB 18030-2022

Como estándar nacional

La primera versión de GB 18030, denominada GB 18030-2000 Tecnología de la información: conjunto de caracteres codificados chinos para el intercambio de información; extensión para el conjunto básico, consta de codificaciones de 1 y 2 bytes. junto con una codificación de 4 bytes para la extensión A de ideogramas unificados CJK que coincide con los de Unicode 3.0. Los puntos de código Unicode correspondientes de este subconjunto, incluidas las asignaciones privadas provisionales, se encuentran en su totalidad en el BMP. Estas partes son totalmente obligatorias en GB 18030-2000. La mayoría de las principales empresas de informática ya habían estandarizado alguna versión de Unicode como formato principal para su uso en sus formatos binarios y llamadas de sistema operativo. Sin embargo, en su mayoría solo admitían puntos de código en el BMP definido originalmente en Unicode 1.0, que admitía solo 65,536 puntos de código y a menudo estaba codificado en 16 bits como UCS-2. Este estándar es básicamente una extensión basada en GBK con caracteres adicionales en CJK Unified Ideographs Extension A.

La segunda versión denominada GB 18030-2005 Tecnología de la información: juego de caracteres codificados en chino tiene el mismo subconjunto obligatorio que GB 18030-2000 de codificaciones de 1, 2 y 4 bytes. Esta versión también incluye la extensión B completa de ideógrafos unificados de CJK en la sección de codificación de 4 bytes que está fuera del BMP como requisito de soporte de sugerencias. Sin embargo, como se requiere mantener la inclusión de CJK Unified Ideographs Extension B en una región de 4 bytes durante el procesamiento de la información, el software ya no puede salirse con la suya al tratar los caracteres como entidades de ancho fijo de 16 bits (UCS-2). Por lo tanto, deben procesar los datos en un formato de ancho variable (como UTF-8 o UTF-16), que es la opción más común, o pasar a un formato de ancho fijo más grande (es decir, UTF-32). Microsoft realizó el cambio de UCS-2 a UTF-16 con Windows 2000. Esta versión coincide con Unicode 3.1 y también brinda soporte para Hangul (coreano), mongol (incluido manchú, escritura clara, Sibe hergen)., Galik), Tai Nuea, tibetano, uigur/kazajo/kirguís y yi.

La tercera y última versión, GB 18030-2022 Tecnología de la información: conjunto de caracteres codificados en chino, exige la parte de soporte de sugerencias de CJK Unified Ideographs Extension B en GB 18030-2005, junto con actualizaciones hasta Unicode 11.0, incluidos Kangxi Radicals y CJK Unified Ideographs Extension C, D, E y F. GB 18030-2022 también reconoce idiomas adicionales, como parte del árabe, Tai Le, New Tai Lue, Tai Tham, Lisu y Miao. GB 18030-2022 también introduce tres niveles de implementación, con el requisito de que "todos los productos que utilizan este estándar deben implementar el Nivel de implementación 1" eso incluye 66 nuevos caracteres BMP en la región de codificación de 4 bytes que se agregaron entre Unicode 3.1 y Unicode 11.0. El nivel de implementación 2 requiere el soporte de la Tabla de caracteres chinos estándar generales y el nivel de implementación 3 requiere todas las demás regiones especificadas en el estándar.

Mapeo

GB 18030 define una codificación de uno (ASCII), dos (GBK extendido) o cuatro bytes (UTF). Los códigos de dos bytes se definen en una tabla de búsqueda, mientras que los códigos de cuatro bytes se definen secuencialmente (por lo tanto, algorítmicamente) para completar partes que de otro modo no estarían codificadas en UCS. GB 18030 hereda los aspectos negativos de GBK, en particular la necesidad de un código especial para encontrar caracteres ASCII de forma segura en una secuencia GB18030.

GB 18030 codificación
GB 18030 code points Unicode
byte 1 (MSB)byte 2byte 3byte 4
007F128 0000007F
80inválido
81FE40FE excepto 7F239400080FFFF excepto D800DFFF
8184303981FE303939420
85-12600) reservado para la futura extensión de caracteres
868F-126000) reservada para la futura extensión ideográfica
no asignados D800DFFF
90E3303981FE303910485761000010FFFF
E4FC-315000) reservada para la futura prórroga estándar
FDFE-25200) definida por el usuario
FFinválido
Total 1112064

Los puntos de código de uno y dos bytes son esencialmente GBK con el signo del euro, asignaciones de PUA para puntos no asignados/definidos por el usuario y puntuaciones verticales. Se puede considerar que el esquema de cuatro bytes consta de dos unidades, cada una de dos bytes. Cada unidad tiene un formato similar a un carácter GBK de dos bytes, pero con un rango de valores para el segundo byte de 0x30 a 0x39 (los códigos ASCII para dígitos decimales). El primer byte tiene el rango de 0x81 a 0xFE, como antes. Esto significa que una rutina de búsqueda de cadenas que sea segura para GBK también debería ser razonablemente segura para GB18030 (de la misma manera que una rutina de búsqueda básica orientada a bytes es razonablemente segura para EUC).

Esto da un total de 1.587.600 (126×10×126×10) posibles secuencias de 4 bytes, lo que es fácilmente suficiente para cubrir los 1.112.064 (17×65536 − 2048 sustitutos) de códigos asignados, reservados y sin caracteres de Unicode. puntos.

Desafortunadamente, para complicar aún más las cosas, no existen reglas simples para traducir entre una secuencia de 4 bytes y su punto de código correspondiente. En cambio, los códigos se asignan secuencialmente (con el primer byte que contiene la parte más significativa y el último la parte menos significativa) solo a puntos de código Unicode que no están asignados de ninguna otra manera. Por ejemplo:

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

Se utiliza una tabla de compensación en la versión WHATWG y W3C de GB 18030 para traducir puntos de código de manera eficiente. ICU y glibc utilizan definiciones de rango similares para evitar desperdiciar espacio en grandes bloques secuenciales.

Soporte

Codificación

GB 18030 ha sido compatible con Windows desde el lanzamiento de Windows Vista, como página de códigos 54936. Windows 2000 y XP ofrecen un paquete de soporte GB18030. La base de datos PostgreSQL de código abierto admite GB18030 a través de su soporte total para UTF-8, es decir, convirtiéndolo hacia y desde UTF-8. De manera similar, Microsoft SQL Server admite GB18030 mediante conversión hacia y desde UTF-16.

Más específicamente, admitir la codificación GB18030 en Windows significa que la página de códigos 54936 es compatible con MultiByteToWideChar y WideCharToMultiByte. Debido a la compatibilidad con versiones anteriores de la asignación, muchos archivos en GB18030 se pueden abrir correctamente como la página de códigos heredada 936, es decir, GBK, incluso si la página de códigos 54936 no es compatible. Sin embargo, esto sólo es cierto si el archivo en cuestión contiene sólo caracteres GBK. La carga fallará o provocará resultados corruptos si el archivo contiene caracteres que no existen en GBK (consulte § Detalles técnicos para ver ejemplos).

gconv de GNU glibc, la biblioteca de códecs de caracteres utilizada en la mayoría de las distribuciones de Linux, admite GB 18030-2000 desde 2.2 y GB 18030-2005 desde 2.14; En particular, glibc incluye asignaciones que no son PUA para GB 18030-2005 para lograr una conversión de ida y vuelta. GNU libiconv, una implementación alternativa de iconv que se utiliza con frecuencia en entornos similares a UNIX que no son glibc, como Cygwin, admite GB 18030 desde la versión 1.4.

A partir de 2022, "la compatibilidad con escrituras no chinas sigue siendo opcional" (presumiblemente solo para compatibilidad con visualización/fuentes; y en China, ya que la codificación es UTF completa). Se sabe que el estándar admite inglés/ASCII y GB 18030-2022 reconoce las siguientes escrituras no chinas: árabe, tibetano, mongol, Tai Le, New Tai Lue, Tai Tham, Yi, Lisu, Hangul (Coreano) y Miao."

Glifos

El paquete de soporte GB18030 para Windows contiene SimSun18030.ttc, un archivo de colección de fuentes TrueType que combina dos fuentes chinas, SimSun-18030 y NSimSun-18030. La fuente SimSun 18030 incluye todos los caracteres de Unicode 2.1 más los nuevos caracteres que se encuentran en el bloque Unicode CJK Unified Ideographs Extension A aunque, a pesar de su nombre, no contiene glifos para todos los caracteres codificados por GB 18030, ya que todos (alrededor de un millón) Los puntos de código Unicode hasta U+10FFFF se pueden codificar como GB 18030. La certificación de cumplimiento GB 18030 solo requiere el manejo y reconocimiento correctos de los glifos en la parte china obligatoria (dos bytes y CJK Ext. A). Sin embargo, el requisito de caracteres PUA en el estándar ha obstaculizado esta implementación.

Otras familias de fuentes CJK como HAN NOM y Hanazono Mincho brindan una cobertura más amplia para los bloques de extensión Unicode CJK que SimSun-18030 o incluso SimSun (Founder Extended), pero no admiten todos los puntos de código definidos en Unicode 5.0.0 cualquiera.

Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save