Jump to content

GB 2312

From Wikipedia, the free encyclopedia
GB 2312
MIME / IANAGB_2312-80 (GB2312 for usual EUC form)
Alias(es)iso-ir-58, chinese, csGB2312, csISO58GB231280
LanguagesSimplified Chinese, English
Partial support:
Traditional Chinese, Russian, Bulgarian, Greek, Japanese, Italian, Irish, Māori
StandardGB/T 2312-1980
ClassificationISO-2022-compatible DBCS, CJK encoding
ExtensionsISO-IR-165
Encoding formats
Preceded byChinese telegraph code
Succeeded byGBK, GB 18030
Other related encodingsJIS X 0208, KS X 1001

GB/T 2312-1980 is a key official character set of the People's Republic of China, used for Simplified Chinese characters. GB2312 is the registered internet name for EUC-CN, which is its usual encoded form. GB refers to the Guobiao standards (国家标准), whereas the T suffix (推荐; tuījiàn; 'recommendation') denotes a non-mandatory standard.[1]

GB/T 2312-1980 was originally a mandatory national standard designated GB 2312-1980. However, following a National Standard Bulletin of the People's Republic of China in 2017, GB 2312 is no longer mandatory, and its standard code is modified to GB/T 2312-1980.[2] GB/T 2312-1980 has been superseded by GBK and GB 18030, which include additional characters, but GB/T 2312 remains in widespread use as a subset of those encodings.

As of July 2026, GB2312 is the second-most popular encoding served from China and territories (after UTF-8), with 3.3% of web servers serving a page declaring it.[3] Globally, GB2312 is declared on less than 0.04% of all web pages.[4] However, all major web browsers decode GB2312-marked documents as if they were marked with the superset GBK encoding, except for Safari and Edge on the label GB_2312 (they do however decode GB_2312-80 and GB2312 as the superset).[5]

There is an analogous character set known as GB/T 12345 Code of Chinese ideogram set for information interchange supplementary set, which supplements GB/T 2312 with traditional character forms by replacing simplified forms in their qūwèi code, and some extra 62 supplemental characters.[6][7] GB-encoded fonts often come in pairs, one with the GB/T 2312 (simplified) character set and the other with the GB/T 12345 (traditional) character set. There exists more GB supplementary encoding sets that supplements GB/T 2312, including GB/T 7589 Code of Chinese ideograms set forinformation interchange--The 2nd supplementary set and GB/T 7590 Code of Chinese ideograms set forinformation interchange--The 4th supplementary set which provides additional [Variant Chinese characters|variant characters] in the same qūwèi encoding format (later used in ISO-2022-CN), but has no relation with characters encoded in GB/T 2312.

Character range in rows

[edit]

While GB/T 2312 covers over 99.99% contemporary Chinese text usage,[8] historical texts and many names remain out of scope. Old GB 2312 standard includes 6,763 Chinese characters (on two levels: the first is arranged by reading, the second by radical then number of strokes), along with symbols and punctuation, Japanese kana, the Greek and Cyrillic alphabets, Zhuyin, and a double-byte set of Pinyin letters with tone marks. In later version GB/T 2312-1980, there are 7,445 letters.

Characters in GB/T 2312 are arranged in a 94×94 grid (as in ISO 2022), and the two-byte code point of each character is expressed in the qūwèi (区位) form, which specifies a row (; ) and the position of the character within the row (cell; ; wèi). (This structure is the same as used by other ISO-2022-based national CJK character set standards; compare kuten.) For example, the character "外" (meaning: foreign) is located in row 45 position 66,[9] thus its qūwèi code is 45-66.

The rows (numbered from 1 to 94) contain characters as follows:

The rows 10–15 and 88–94 are unassigned.

For GB/T 2312-1980, it contains 682 signs and 6763 Chinese Characters.

Encodings of GB/T 2312

[edit]

EUC-CN

[edit]

EUC-CN is often used as the character encoding (i.e. for external storage) in programs that deal with GB/T 2312, thus maintaining compatibility with ASCII. Two bytes are used to represent every character not found in ASCII. The value of the first byte is from 0xA1–0xF7 (161–247), while the value of the second byte is from 0xA1–0xFE (161–254). Since all of these ranges are beyond ASCII, like UTF-8, it is possible to check if a byte is part of a multi-byte construct when using EUC-CN, but not if a byte is first or last.

Compared to UTF-8, GB/T 2312 (whether native or encoded in EUC-CN) is more storage efficient: while UTF-8 uses three bytes[a] per CJK ideograph, GB/T 2312 only uses two. However, GB/T 2312 does not cover as many ideographs as Unicode does.

To map the qūwèi code points to EUC bytes, add 160 (0xA0) to both the row number (or qū, 区) and cell/column number (ten or wèi, 位). The result of addition to the row number of the code point will form the high byte, and the result of addition to the cell number of the code point will form the low byte.

For example, to encode the character "外" at qūwèi cell 45-66, the high byte will use the row number 45: 45+160=205=0xCD, and the low byte will come from the cell number 66: 66+160=226=0xE2. So, the full encoding is <CD E2>.[10][11]

ISO-2022-CN

[edit]

ISO-2022-CN is another encoding form of GB/T 2312, which is also the encoding specified in the official documentation. This encoding references the ISO-2022 standard, which also uses two bytes to encode characters not found in ASCII. However, instead of using the extended region of ASCII, ISO-2022 uses the same byte range as ASCII: the value of the first byte is from 0x21–0x77 (33–119), while the value of the second byte is from 0x21–0x7E (33–126). As the byte range overlaps ASCII significantly, special characters are required to indicate whether a character is in the ASCII range or is part of the two-byte sequence of extended region, namely the Shift Out and Shift In functions. This poses a risk for misencoding as improper handling of text can result in missing information.

To map the qūwèi code points to ISO-2022 bytes, add 32 (0x20) to both the row number (or qū, 区) and cell/column number (or wèi, 位). The result of addition to the row number of the code point will form the high byte, and the result of addition to the cell number of the code point will form the low byte similar to EUC encoding.

For example, to encode the character "外" at qūwèi cell 45-66, the high byte will use the row number 45: 45+32=77=0x4D, and the low byte will come from the cell number 66: 66+32=98=0x62. So, the full encoding is <4D 62>.[11]

HZ

[edit]

HZ is another encoding of GB/T 2312 that is used mostly for Usenet postings; characters are represented with the same byte pairs as in ISO-2022-CN, but the byte sequences denoting the beginning and end of a range of GB 2312 text differ.

Code charts

[edit]

In the tables below, where a pair of hexadecimal numbers is given for a prefix byte or a coding byte, the smaller (with the eighth bit unset or unavailable) is used when encoded over GL (0x21-0x7E), as in ISO-2022-CN or HZ-GB-2312, and the larger (with the eighth bit set) is used in the more typical case of it being encoded over GR (0xA1-0xFE), as in EUC-CN, GBK or GB 18030. Qūwèi numbers are given in decimal.

When GB/T 2312 is encoded over GR, both bytes have the eighth bit set (i.e. are greater than 0x7F). GBK and GB 18030 also make use of two-byte codes in which only the first byte has the eighth bit set for extension purposes: such codes are outside of the GB/T 2312 plane, and are not tabulated here.

Lead byte

[edit]

This chart details the overall layout of the main plane of the GB/T 2312 character set by lead byte. For lead bytes used for characters other than hanzi, links are provided to charts on this page listing the characters encoded under that lead byte. For lead bytes used for hanzi, links are provided to the appropriate section of Wiktionary's hanzi index.

GB 2312 (lead bytes)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax SP[b] 1-_ 2-_ 3-_ 4-_ 5-_ 6-_ 7-_ 8-_ 9-_ 10-_ 11-_ 12-_ 13-_ 14-_ 15-_
3x/Bx 16-_ 17-_ 18-_ 19-_ 20-_ 21-_ 22-_ 23-_ 24-_ 25-_ 26-_ 27-_ 28-_ 29-_ 30-_ 31-_
4x/Cx 32-_ 33-_ 34-_ 35-_ 36-_ 37-_ 38-_ 39-_ 40-_ 41-_ 42-_ 43-_ 44-_ 45-_ 46-_ 47-_
5x/Dx 48-_ 49-_ 50-_ 51-_ 52-_ 53-_ 54-_ 55-_ 56-_ 57-_ 58-_ 59-_ 60-_ 61-_ 62-_ 63-_
6x/Ex 64-_ 65-_ 66-_ 67-_ 68-_ 69-_ 70-_ 71-_ 72-_ 73-_ 74-_ 75-_ 76-_ 77-_ 78-_ 79-_
7x/Fx 80-_ 81-_ 82-_ 83-_ 84-_ 85-_ 86-_ 87-_ 88-_ 89-_ 90-_ 91-_ 92-_ 93-_ 94-_ DEL[b]
  Lead byte
  Unused lead byte

Non-Hanzi rows

[edit]

The following charts list the non-hanzi characters available in GB/T 2312, in GB/T 12345, and in double-byte region 1 of GB 18030 (which roughly corresponds to the non-hanzi region of GB/T 2312). Notes are made where these differ, and where GB 6345.1 and ISO-IR-165 differ from these. Cross-references are made to articles on other CJK national character sets for comparison.

Two implementations of GB2312

[edit]
EUC-CNGBK/GB18030 subsetGB2312.TXTCharacter name[12]:3
A1A4 U+00B7 · MIDDLE DOT U+30FB KATAKANA MIDDLE DOT 间隔点; 'separator dot'
A1AA U+2014 EM DASH U+2015 HORIZONTAL BAR 破折号; 'em dash'

Unicode mappings of the interpunct (Chinese: 间隔点; lit. 'separator dot') and em dash (Chinese: 破折号) in the subset of GBK and GB 18030 corresponding to GB/T 2312 (U+00B7 · MIDDLE DOT and U+2014 EM DASH) differ from those which are listed in GB2312.TXT (U+30FB KATAKANA MIDDLE DOT and U+2015 HORIZONTAL BAR), which is a data file which was previously provided by the Unicode Consortium,[13] although it has been designated as obsolete since August 2011[14] and is no longer hosted as of September 2016.

As of 2015, Microsoft .Net Framework follows GB 18030 mappings when mapping those two characters in data labelled gb2312, whereas ICU,[15] iconv-1.14,[16] php-5.6, ActivePerl-5.20, Java 1.7 and Python 3.4[17] follow GB2312.TXT in response to the gb2312 label. Ruby 2.2 is compatible with both implementations; it internally converts the conflictive characters to the GB 18030 subset. The W3C/WHATWG technical recommendation for use with HTML5 specifies a GBK encoding to be inferred for streams labelled gb2312, which in turn uses a GB18030 decoder.[18]

Other differing mappings have been defined and used by individual vendors,[13] including one from Apple.[19]

Character set 0x21/0xA1 (row 1: punctuation and symbols)

[edit]

This row contains punctuation, mathematical operators, and other symbols. The following table shows the GB 18030 mappings[20] for these GB/T 2312 characters first, followed by any other documented mappings.

GB 2312 (prefixed with 0x21/0xA1)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax IDSP
3001
3002
·/ ˉ
02C9
ˇ
02C7
¨
00A8
3003
3005
/ / / /
2018
2019
3x/Bx
201C
201D
3014
3015
3008
3009
300A
300B
300C
300D
300E
300F
3016
3017
3010
3011
4x/Cx ±
00B1
×
00D7
÷
00F7
2236
2227
2228
2211
220F
222A
2229
2208
2237
221A
22A5
2225
2220
5x/Dx
2312
2299
222B
222E
2261
224C
2248
223D
221D
2260
226E
226F
2264
2265
221E
2235
6x/Ex
2234
2642
2640
°
00B0
2032
2033
2103
FF04
¤
00A4
/¢ /£
2030
§
00A7
2116
2606
2605
7x/Fx
25CB
25CF
25CE
25C7
25C6
25A1
25A0
25B3
25B2
203B
2192
2190
2191
2193
3013

Character set 0x22/0xA2 (row 2: list markers)

[edit]

This row contains various types of list marker. Lowercase forms of the Roman numerals were not included in the original GB/T 2312[21] nor in GB/T 12345,[6] but are included in both Windows code page 936[22] and GB 18030.[20] A euro sign was also added by GB 18030.[20]

GB 2312 (prefixed with 0x22/0xA2)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
3x/Bx
2488
2489
248A
248B
248C
248D
248E
248F
2490
2491
2492
2493
2494
2495
2496
4x/Cx
2497
2498
2499
249A
249B
2474
2475
2476
2477
2478
2479
247A
247B
247C
247D
247E
5x/Dx
247F
2480
2481
2482
2483
2484
2485
2486
2487
2460
2461
2462
2463
2464
2465
2466
6x/Ex
2467
2468
2469
20AC
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
7x/Fx
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
216A
216B

Character set 0x23/0xA3 (row 3: ISO 646-CN)

[edit]

This row contains ISO 646-CN (GB/T 1988-80), a national counterpart to ASCII. Compare row 3 of KS X 1001, which does the same with South Korea's ISO 646 version, and row 3 of JIS X 0208 and of KPS 9566, which include only the alphanumeric subset, but in the same layout. The following chart lists ISO 646-CN.

ISO 646-CN; non-fullwidth mappings
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax !
0021
"
0022
#
0023
¥
00A5
%
0025
&
0026
'
0027
(
0028
)
0029
*
002A
+
002B
,
002C
-
002D
.
002E
/
002F
3x/Bx 0
0030
1
0031
2
0032
3
0033
4
0034
5
0035
6
0036
7
0037
8
0038
9
0039
:
003A
;
003B
<
003C
=
003D
>
003E
?
003F
4x/Cx @
0040
A
0041
B
0042
C
0043
D
0044
E
0045
F
0046
G
0047
H
0048
I
0049
J
004A
K
004B
L
004C
M
004D
N
004E
O
004F
5x/Dx P
0050
Q
0051
R
0052
S
0053
T
0054
U
0055
V
0056
W
0057
X
0058
Y
0059
Z
005A
[
005B
\
005C
]
005D
^
005E
_
005F
6x/Ex `
0060
a
0061
b
0062
c
0063
d
0064
e
0065
f
0066
g
0067
h
0068
i
0069
j
006A
k
006B
l
006C
m
006D
n
006E
o
006F
7x/Fx p
0070
q
0071
r
0072
s
0073
t
0074
u
0075
v
0076
w
0077
x
0078
y
0079
z
007A
{
007B
|
007C
}
007D
203E

When used in an encoding allowing combination with ASCII such as EUC-CN (and its superset GB 18030), these characters are usually implemented as fullwidth characters, hence mappings to the Halfwidth and Fullwidth Forms block are used as shown below. GB 6345.1 also handles this row as fullwidth, and adds the halfwidth forms (as above) as row 10.[1] Apple mostly maps this row to fullwidth code points as below, but uses non-fullwidth mappings for the overline and yuan sign as above.[19]

GB 2312 (prefixed with 0x23/0xA3); fullwidth mappings
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
FF01
FF02
FF03
FFE5
FF05
FF06
FF07
FF08
FF09
FF0A
FF0B
FF0C
FF0D
FF0E
FF0F
3x/Bx
FF10
FF11
FF12
FF13
FF14
FF15
FF16
FF17
FF18
FF19
FF1A
FF1B
FF1C
FF1D
FF1E
FF1F
4x/Cx
FF20
FF21
FF22
FF23
FF24
FF25
FF26
FF27
FF28
FF29
FF2A
FF2B
FF2C
FF2D
FF2E
FF2F
5x/Dx
FF30
FF31
FF32
FF33
FF34
FF35
FF36
FF37
FF38
FF39
FF3A
FF3B
FF3C
FF3D
FF3E
_
FF3F
6x/Ex
FF40
FF41
FF42
FF43
FF44
FF45
FF46
/ɡ[c]
FF48
FF49
FF4A
FF4B
FF4C
FF4D
FF4E
FF4F
7x/Fx
FF50
FF51
FF52
FF53
FF54
FF55
FF56
FF57
FF58
FF59
FF5A
FF5B
FF5C
FF5D
FFE3

Character set 0x24/0xA4 (row 4: Hiragana)

[edit]

This set contains Hiragana for writing the Japanese language.

Compare with row 4 of JIS X 0208, which this row matches, and with row 10 of KS X 1001 and of KPS 9566, which use the same layout, but in a different row.

GB 2312 (prefixed with 0x24/0xA4)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
3041
3042
3043
3044
3045
3046
3047
3048
3049
304A
304B
304C
304D
304E
304F
3x/Bx
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
305A
305B
305C
305D
305E
305F
4x/Cx
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
306A
306B
306C
306D
306E
306F
5x/Dx
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
307A
307B
307C
307D
307E
307F
6x/Ex
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
308A
308B
308C
308D
308E
308F
7x/Fx
3090
3091
3092
3093

Character set 0x25/0xA5 (row 5: Katakana)

[edit]

This set contains Katakana for writing the Japanese language. However, the Japanese long vowel mark, which is used in katakana text and included in row 1 of JIS X 0208, is not included in GB/T 2312, although it is added in GBK and GB 18030 outside of the main GB/T 2312 plane,[24] at 0xA960.[20]

Compare with row 5 of JIS X 0208, which this row matches, and with row 11 of KS X 1001 and of KPS 9566, which use the same layout, but in a different row.

GB 2312 (prefixed with 0x25/0xA5)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
30A1
30A2
30A3
30A4
30A5
30A6
30A7
30A8
30A9
30AA
30AB
30AC
30AD
30AE
30AF
3x/Bx
30B0
30B1
30B2
30B3
30B4
30B5
30B6
30B7
30B8
30B9
30BA
30BB
30BC
30BD
30BE
30BF
4x/Cx
30C0
30C1
30C2
30C3
30C4
30C5
30C6
30C7
30C8
30C9
30CA
30CB
30CC
30CD
30CE
30CF
5x/Dx
30D0
30D1
30D2
30D3
30D4
30D5
30D6
30D7
30D8
30D9
30DA
30DB
30DC
30DD
30DE
30DF
6x/Ex
30E0
30E1
30E2
30E3
30E4
30E5
30E6
30E7
30E8
30E9
30EA
30EB
30EC
30ED
30EE
30EF
7x/Fx
30F0
30F1
30F2
30F3
30F4
30F5
30F6

Character set 0x26/0xA6 (row 6: Greek and vertical extensions)

[edit]

This row contains basic support for the modern Greek alphabet, without diacritics or the final sigma.

The highlighted characters are presentation forms of punctuation marks for vertical writing, and are not included in GB/T 2312 proper, but are included in this row by GB/T 12345,[1][6] Windows code page 936,[22] Mac OS Simplified Chinese,[19] and GB 18030.[20] They are seen as "standard extensions to GB 2312".[19] Conversely, ISO-IR-165 includes patterned semigraphic characters in this row (mostly without exact counterparts in Unicode), colliding with the code positions used for the vertical extensions.[25]

Compare with row 6 of JIS X 0208, which this row matches when the vertical forms are not included, and with row 6 of KPS 9566, which includes the same Greek letters in the same layout, but adds Roman numerals rather than vertical forms. Contrast row 5 of KS X 1001, which offsets the Greek letters to include the Roman numerals first.

GB 2312 (prefixed with 0x26/0xA6)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax Α
0391
Β
0392
Γ
0393
Δ
0394
Ε
0395
Ζ
0396
Η
0397
Θ
0398
Ι
0399
Κ
039A
Λ
039B
Μ
039C
Ν
039D
Ξ
039E
Ο
039F
3x/Bx Π
03A0
Ρ
03A1
Σ
03A3
Τ
03A4
Υ
03A5
Φ
03A6
Χ
03A7
Ψ
03A8
Ω
03A9
4x/Cx α
03B1
β
03B2
γ
03B3
δ
03B4
ε
03B5
ζ
03B6
η
03B7
θ
03B8
ι
03B9
κ
03BA
λ
03BB
μ
03BC
ν
03BD
ξ
03BE
ο
03BF
5x/Dx π
03C0
ρ
03C1
σ
03C3
τ
03C4
υ
03C5
φ
03C6
χ
03C7
ψ
03C8
ω
03C9
[d]
FE10
[d]
FE12
[d]
FE11
[d]
FE13
[d]
FE14
[d]
FE15
[d]
FE16
6x/Ex
FE35
FE36
FE39
FE3A
︿
FE3F
FE40
FE3D
FE3E
FE41
FE42
FE43
FE44
[d]
FE17
[d]
FE18
FE3B
FE3C
7x/Fx
FE37
FE38
FE31
[d]
FE19
FE33
FE34

Character set 0x27/0xA7 (row 7: Cyrillic)

[edit]

This set includes both cases of 33 letters from the Cyrillic script, sufficient to write the modern Russian alphabet and Bulgarian alphabet, although other forms of Cyrillic require additional letters.[27]

Compare with row 7 of JIS X 0208, which this row matches, and with row 12 of KS X 1001 and row 5 of KPS 9566, which use the same layout but in different rows.

GB 2312 (prefixed with 0x27/0xA7)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax А
0410
Б
0411
В
0412
Г
0413
Д
0414
Е
0415
Ё
0401
Ж
0416
З
0417
И
0418
Й
0419
К
041A
Л
041B
М
041C
Н
041D
3x/Bx О
041E
П
041F
Р
0420
С
0421
Т
0422
У
0423
Ф
0424
Х
0425
Ц
0426
Ч
0427
Ш
0428
Щ
0429
Ъ
042A
Ы
042B
Ь
042C
Э
042D
4x/Cx Ю
042E
Я
042F
5x/Dx а
0430
б
0431
в
0432
г
0433
д
0434
е
0435
ё
0451
ж
0436
з
0437
и
0438
й
0439
к
043A
л
043B
м
043C
н
043D
6x/Ex о
043E
п
043F
р
0440
с
0441
т
0442
у
0443
ф
0444
х
0445
ц
0446
ч
0447
ш
0448
щ
0449
ъ
044A
ы
044B
ь
044C
э
044D
7x/Fx ю
044E
я
044F

Character set 0x28/0xA8 (row 8: zhuyin and non-ASCII pinyin)

[edit]

This row contains bopomofo and pinyin characters, excluding ASCII letters (which are in row 3). The highlighted characters are those which are not in the base GB 2312 set but are added by GB 6345.1,[19] and also included in GB/T 12345,[1][6] Windows code page 936,[22] Mac OS Simplified Chinese[19] and GB 18030.[20] They are seen as "standard extensions to GB 2312".[19]

GB 6345.1 treats the pinyin in this row as fullwidth, and includes halfwidth counterparts as row 11;[1] GB 18030 does not do this.

GB 2312 (prefixed with 0x28/0xA8)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax ā
0101
á
00E1
ǎ
01CE
à
00E0
ē
0113
é
00E9
ě
011B
è
00E8
ī
012B
í
00ED
ǐ
01D0
ì
00EC
ō
014D
ó
00F3
ǒ
01D2
3x/Bx ò
00F2
ū
016B
ú
00FA
ǔ
01D4
ù
00F9
ǖ
01D6
ǘ
01D8
ǚ
01DA
ǜ
01DC
ü
00FC
ê
00EA
ɑ
0251
ḿ[e]
1E3F
ń
0144
ň
0148
ǹ[f]
01F9
4x/Cx ɡ/[g]
3105
3106
3107
3108
3109
310A
310B
310C
310D
310E
310F
5x/Dx
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
311A
311B
311C
311D
311E
311F
6x/Ex
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
7x/Fx

Character set 0x29/0xA9 (row 9: box drawing)

[edit]
GB 2312 (prefixed with 0x29/0xA9)
0 1 2 3 4 5 6 7 8 9 A B C D E F
2x/Ax
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
250A
250B
3x/Bx
250C
250D
250E
250F
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
251A
251B
4x/Cx
251C
251D
251E
251F
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
252A
252B
5x/Dx
252C
252D
252E
252F
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
253A
253B
6x/Ex
253C
253D
253E
253F
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
254A
254B
7x/Fx

Hanzi rows

[edit]

Corrections

[edit]

GB 5007.1-85 24×24 Bitmap Font Set of Chinese Characters for Information Exchange (Chinese: 信息交换用汉字 24x24 点阵字模集) is the earliest font template based on GB/T 2312 that features corrections and extensions including:

  • changing the glyph shape of Latin alphabet "g"
  • adding 6 Hanyu Pinyin characters: ɑ, ḿ, ń, ň, ǹ, ɡ[note 1]
  • changed "" to ""
  • included 94 half-width glyphs in row 10 (half-width form of row 3, equivalent to GB 1988–80
  • included half-width form of 32 Hanyu Pinyin characters from row 8 in row 11.

GB/T 2312 did not have corrections, but these corrections are included in font templates that are based on GB/T 2312 including GB/T 12345; its supersets GBK and GB 18030 also included these corrections. GB/T 2312 is also used in ISO-IR-165.

Official font set

[edit]
  • GB 5007.1—1985 24×24 Dot matrix font set of Chinese ideograms for information interchange
  • GB 5007.2—1985 24×24 Dot matrix font data set of Chinese ideograms for information interchange
  • GB 5199.1—1985 15×16 Dot matrix font set of Chinese ideograms for information interchange
  • GB 5199.2—1985 15×16 Dot matrix font data set of Chinese ideograms for information interchange
  • GB 6345.1—1986 32×32 Dot matrix font set of Chinese ideograms for information interchange
  • GB 6345.2—1986 32×32 Dot matrix font data set of Chinese ideograms for information interchange
  • GB/T 12034—1989 32×32 Dot matrix Fangsongti font set and data set of Chinese ideograms for information interchange
  • GB/T 12035—1989 32×32 Dot matrix Kaiti font set and data set of Chinese ideograms for information interchange
  • GB/T 12036—1989 32×32 Dot matrix Heiti font set and data set of Chinese ideograms for information interchange
  • GB/T 12037—1989 36×36 Dot matrix Songti font set and data set of Chinese ideograms for information interchange
  • GB/T 12038—1989 36×36 Dot matrix Fangsongti font set and data set of Chinese ideograms for information interchange
  • GB/T 12039—1989 36×36 Dot matrix Kaiti font set and data set of Chinese ideograms for information interchange
  • GB/T 12040—1989 36×36 Dot matrix Heiti font set and data set of Chinese ideograms for information interchange
  • GB/T 12041—1989 48×48 Dot matrix Songti font set and data set of Chinese ideograms for information interchange
  • GB/T 12042—1989 48×48 Dot matrix Fangsongti font set and data set of Chinese ideograms for information interchange
  • GB/T 12043—1989 48×48 Dot matrix Kaiti font set and data set of Chinese ideograms for information interchange
  • GB/T 12044—1989 48×48 Dot matrix Heiti font set and data set of Chinese ideograms for information interchange
  • GB/T 13443—1992 128×128 Dot matrix kaitifont set and data set of Chinese ideograms for information interchange
  • GB/T 13444—1992 128×128 Dot matrix Fangsongti font set and data set of Chinese ideograms for information interchange
  • GB/T 13445—1992 256×256 Dot matrix Kaiti font set and data set of Chinese ideograms for information interchange
  • GB/T 13446—1992 256×256 Dot matrix Fangsongti font set and data set of Chinese ideograms for information interchange
  • GB/T 13844—1992 Vector Danxian Songti font set and data set of Chinese ideogram for graphics information interchange
  • GB/T 13845—1992 Vector Songti font set and data set of Chinese ideogram for graphics information interchange
  • GB/T 13846—1992 Vector Fangsongti font set and data set of Chinese ideogram for graphics information interchange
  • GB/T 13847—1992 Vector Kaiti font set and data set of Chinese ideogram for graphics information interchange
  • GB/T 13848—1992 Vector Heiti font set and data set of Chinese ideogram for graphics information interchange

See also

[edit]

References

[edit]
  1. 1 2 3 4 5 Lunde, Ken (2009). CJKV Information Processing: Chinese, Japanese, Korean & Vietnamese Computing (2nd ed.). Sebastopol, CA: O'Reilly. pp. 94–111. ISBN 978-0-596-51447-1.
  2. "2017年第7号中国国家标准公告 (China National Standard Bulletin 2017 No.7)". Standardization Administration of the People's Republic of China. Retrieved 3 July 2018.
  3. "Distribution of Character Encodings among websites that use China and territories". w3techs.com. Retrieved 2026-07-20.
  4. "Historical trends in the usage statistics of character encodings for websites, October 2022". w3techs.com. Retrieved 2026-07-20.
  5. "Encoding: Summarized test results". www.w3.org. Retrieved 2019-11-15.
  6. 1 2 3 4 Lunde, Ken (1998). "Appendix F: GB/T 12345". CJKV Information Processing (PDF). O'Reilly Media. ISBN 9781565922242.
  7. GB12345-80 to Unicode table. Unicode Consortium. 1993-12-06. Archived from the original on 2004-06-17.
  8. Hannas, William C. (1997). Asia's Orthographic Dilemma. University of Hawaiʻi Press. p. 264. ISBN 9780824818920. the set provides for better than 99.99 percent of all usage. Nevertheless, the designers found it necessary to add 14,276 "special usage" characters to cover contingencies!
  9. "GB 2312-1980: Information technology—Chinese ideogram coded character set for information interchange (Basic set)". May 1981.
  10. "Unicode to GB2312 or GBK table". cs.nyu.edu. Archived from the original on 3 March 2016. Retrieved 11 January 2022.
  11. 1 2 Lunde, Ken Roger (December 2008). CJKV Information Processing (2nd ed.). O'Reilly. ISBN 978-0-596-51447-1.
  12. "GB 2312-1980: Information technology—Chinese ideogram coded character set for information interchange (basic set)". May 1981. Retrieved 2 October 2016.
  13. 1 2 Haible, Bruno. "GB2312 (Conversion Tables)". Retrieved 29 September 2016.
  14. "Readme – MAPPINGS/OBSOLETE/EASTASIA". 9 August 2001. Retrieved 29 September 2016.
  15. "java-EUC_CN-1.3_P.ucm". Retrieved 29 September 2016.{{cite web}}: CS1 maint: deprecated archival service (link)
  16. "libiconv:lib/gb2312.h". GNU Savannah. Retrieved 29 September 2016.
  17. "Issue 24036". Python Bug Tracker.
  18. "Encoding § Names and labels". W3C. Retrieved 29 September 2016.
  19. 1 2 3 4 5 6 7 8 9 10 "Map (external version) from Mac OS Chinese Simplified encoding to Unicode 3.0 and later". Apple, Inc.
  20. 1 2 3 4 5 6 7 8 9 10 Standardization Administration of China (SAC) (2005-11-18). GB 18030-2005: Information Technology—Chinese coded character set.
  21. China Association for Standardization. Chinese Coded Graphic Character Set for Information Interchange (PDF). ITSCJ/IPSJ. ISO-IR-58.
  22. 1 2 3 4 5 6 Microsoft. "CODEPAGE 936: PRC GBK (XGB) - ANSI, OEM". Unicode Consortium.
  23. 1 2 Viswanadha, Raghuram (2000-08-30). "Unicode to ISO-IR-165 table". International Components for Unicode. IBM.
  24. Lunde, Ken (2009). "Seemingly Missing Characters". CJKV Information Processing: Chinese, Japanese, Korean & Vietnamese Computing (2nd ed.). Sebastopol, CA: O'Reilly. p. 180. ISBN 978-0-596-51447-1.
  25. 1 2 CCITT (1992-07-13). Codes of the Chinese graphic character set for communication (PDF). ITSCJ/IPSJ. ISO-IR-165.
  26. Lunde, Dr Ken (4 August 2022). "The GB 18030-2022 Standard". Medium. Retrieved 7 August 2022.
  27. Czyborra, Roman (1998-11-30) [1998-05-25]. "The Cyrillic Charset Soup". Archived from the original on 2016-12-03. Retrieved 2016-12-03.
  28. "Unicode Character Encoding Stability Policies". Unicode Consortium. 2017-06-23.
  29. 1 2 [permanent dead link]

Notes

[edit]
  1. Only for ideographs covered by GB/T 2312, all of which fall into Unicode BMP
  2. 1 2 As an ISO 2022 compatible 94n-character set, the plain space and delete character are available as single-byte codes at 0x20 and 0x7F (not 0xA0 and 0xFF) respectively.
  3. Used for U+FF47 by most implementations based on GB 6345.1, including Apple's implementation and GB 18030 (which use 8-32 for U+0261),[20] but for U+0261 by ISO-IR-165.[23]
  4. 1 2 3 4 5 6 7 8 9 10 These characters are from the Vertical Forms block. Some mappings in use were designed when the only vertical presentation forms which existed in Unicode were those in the CJK Compatibility Forms block. Specifically, they are mapped by Windows-936 and formerly GB 18030 to the Private Use Area, but with a defined glyph,[22][20] and by Apple to the regular fullwidth character with an appended private use character U+F87E as a variation marker.[19] In the GB 18030-2022 update, these Private Use Area mappings has been eliminated and now mapped to their standard Unicode codepoints.[26]
  5. Mapped to the Private Use Area U+E7C7 by the first (2000) edition of GB 18030, and also by Windows-936;[22] this was amended by the 2005 edition of GB 18030.[20]
  6. This composed character was added in Unicode 3.0. Prior to this, this character was mapped to its composition sequence (i.e. U+006E+0300) by Apple.[19] This change predates the stabilisation of Unicode normalisation forms, which was introduced in Unicode 3.1.[28] It is mapped to the Private Use Area U+E7C8 by Windows-936.[22]
  7. Mapped to U+0261 in GB 18030[20] and most other implementations based on GB 6345.1[19] (which use 3-71 for U+FF47), but to U+FF47 in ISO-IR-165.[23][25]
  1. ɑ (U+0251)
    ḿ (U+1E3F; Submitted in Unicode 3.0, thus Code page 936 did not include this character[29])
    ń (U+0144)
    ň (U+0148)
    ǹ (U+01F9; Submitted in Unicode 3.0, thus Code page 936 did not include this character[29])
    ɡ (U+0261)

Further reading

[edit]
[edit]