GB 18030

extra =

Notelist 유니코드 둘러보기 **GB 18030**은 중국 정부 표준으로, 정보 기술 – 중국어 코드 문자 집합으로 설명되며 중국 내 소프트웨어에 필요한 언어 및 문자 지원을 정의한다. **GB18030**은 GB2312를 대체하는 중화인민공화국(PRC)의 공식 문자 집합에 대한 등록된 인터넷 이름이다.access-date=2016-12-05 유니코드 변환 형식#Mapping. (즉, 모든 유니코드 코드 포인트의 인코딩)으로서, GB18030은 간체자와 정체자를 모두 지원한다. 또한 GB/T 2312, CP936,The euro sign is an exception which is given a single byte code of 0x80 in Microsoft's later versions of CP936/GBK and a two byte code of A2 E3 in GB18030. 및 GBK 1.0을 포함한 레거시 인코딩과도 호환된다. 유니코드 컨소시엄은 이 중국 표준의 최신 버전인 **GB 18030-2022**가 이전 버전인 GB 18030-2005에서 "33개의 다른 문자와 55개의 코드 위치를 포함하는" "파괴적인 변경"을 도입했다고 구현자들에게 경고했다.website=www.unicode.org GB 18030-2022는 2023년 8월 1일부터 시행되었다.website=bugs.openjdk.org 이는 ICU 73.2 및 자바 21에 구현되었고,url-status= 이전 자바 8, 11, 17 (LTS 릴리스) 및 20.0.2로 백포트되었다.website=bugs.openjdk.org 인코딩 방식 외에도 이 표준은 어떤 추가 스크립트와 언어가 표현되어야 하는지, 그리고 이 표준이 누구에게 적용되는지에 대한 요구 사항을 포함한다. 그러나 이 표준은 중국어 한자에 대한 공식 문자 형태를 정의하지 않는다. 이는 통용규범한자표에 표준화되어 있다.
# 역사
GB18030 문자 집합은 공식적으로 "중국 국가 표준 GB 18030-2005: 정보 기술—중국어 코드화 문자 집합"이라고 불린다. **GB**는 Guójiā Biāozhǔn (国家标准)의 약어로, 중국어로 국가 표준을 의미한다. 이 표준은 2005년 11월 8일 베이징의 중국 표준 출판사에서 발행되었다. 표준의 일부만 의무 사항이다. 2006년 5월 1일부터 PRC에서 판매되는 모든 소프트웨어 제품에 대해 의무 하위 집합 지원이 공식적으로 요구된다. {| class="wikitable floatright" |+ GB 18030 버전 간의 유니코드 매핑 차이점 ! rowspan=2 | GB 바이트
시퀀스 !! colspan=2 | 유니코드 코드 포인트 |- ! GB 18030-2000 ! GB 18030-2005 |- | A8 BC (ḿ)|| |U+E7C7||1E3F |- | 81 35 F4 37||1E3F|| |U+E7C7 |} "중국 국가 표준 GB 18030-2000: 정보 기술—정보 교환을 위한 중국어 이데오그램 코드화 문자 집합—기본 세트 확장"으로 알려진 이 표준의 이전 버전은 2000년 3월 17일에 발행되었다. 인코딩 방식은 새 버전에서도 동일하며, GB-유니코드 매핑의 유일한 차이점은 GB 18030-2000이 문자 A8 BC (ḿ)를 개인 사용 코드 포인트 U+E7C7에 매핑하고, 문자 81 35 F4 37 (글리프 지정 없이)를 U+1E3F (ḿ)에 매핑한 반면, GB 18030-2005는 이 두 매핑 할당을 교환한다는 것이다.date=2005-11-18534 한중일 통합 한자 확장 B의 출현과 같이 유니코드의 업데이트로 인해 더 많은 코드 포인트가 문자와 연결되었다. 중국의 소수민족이 사용하는 일부 문자, 예를 들어 몽골 문자 및 티베트 문자 (GB 16959-1997 및 GB/T 20542-2006)도 추가되었으며, 이는 표준 이름 변경의 이유가 되었다. 선행 표준들과 비교하여, GB 18030의 유니코드 매핑은 GBK 1.0에서 임시로 유니코드 Private Use Area 코드 포인트 (U+E000–F8FF)로 할당되었고 나중에 유니코드에 인코딩된 81개 문자에 대해 수정되었다.url-status= 이는 GB 18030의 부록 E에 명시되어 있다.534date=2000-03-17499 GB 18030-2005에는 여전히 유니코드 PUA에 매핑되는 24개의 문자가 있다.access-date=28 September 2016 GB 18030-2022 업데이트에서는 PUA에 매핑되어야 하는 문자 요구 사항이 완전히 해제되었으며 모든 문자는 표준 유니코드 코드 포인트에 매핑되어야 한다. 이 중 18개의 매핑은 GBK와 GB 18030 사이에서 발생한 것과 유사하게 위치 교환을 통해 업데이트되었다. 나머지 6개는 두 바이트 PUA 매핑을 유지했으므로 비 PUA 선호도를 따르기 위해 4바이트 시퀀스 변경이 필요하다.date=4 August 2022 {| class="wikitable" |+ PUAGB-유니코드 매핑의 개인 사용 문자 ! rowspan=2 | GB 바이트
시퀀스 !! colspan=4 | 유니코드 코드 포인트 a |- ! GBK 1.0access-date=11 September 2016534 ! GB 18030-2005 ! 유니코드 4.1 ! GB 18030-2022 |- |A6 D9access-date=11 September 2016108|||| |`U+E78D` | colspan="2" |FE10 |- |A6 DA|||| |`U+E78E`|| colspan="2" |FE12 |- |A6 DB|||| |`U+E78F`|| colspan="2" |FE11 |- |A6 DC|||| |`U+E790`|| colspan="2" |FE13 |- |A6 DD|||| |`U+E791`|| colspan="2" |FE14 |- |A6 DE|||| |`U+E792`|| colspan="2" |FE15 |- |A6 DF|||| |`U+E793`|| colspan="2" |FE16 |- |A6 EC|||| |`U+E794`|| colspan="2" |FE17 |- |A6 ED|||| |`U+E795`|| colspan="2" |FE18 |- |A6 F3|||| |`U+E796`|| colspan="2" |FE19 |- |A8 BC|| |`U+E7C7`|| colspan="3" |1E3F |- |A8 BF|| |`U+E7C8`|| colspan="3" |01F9 |- |A9 89|| |`U+E7E7`|| colspan="3" |303E |- |A9 8A|| |`U+E7E8`|| colspan="3" |2FF0 |- |A9 8B|| |`U+E7E9`|| colspan="3" |2FF1 |- |A9 8C|| |`U+E7EA`|| colspan="3" |2FF2 |- |A9 8D|| |`U+E7EB`|| colspan="3" |2FF3 |- |A9 8E|| |`U+E7EC`|| colspan="3" |2FF4 |- |A9 8F|| |`U+E7ED`|| colspan="3" |2FF5 |- |A9 90|| |`U+E7EE`|| colspan="3" |2FF6 |- |A9 91|| |`U+E7EF`|| colspan="3" |2FF7 |- |A9 92|| |`U+E7F0`|| colspan="3" |2FF8 |- |A9 93|| |`U+E7F1`|| colspan="3" |2FF9 |- |A9 94173|| |`U+E7F2`|| colspan="3" |2FFA |- |A9 95|| |`U+E7F3`|| colspan="3" |2FFB |- |FE 50|| |`U+E815`|| colspan="3" |2E81 |- |FE 51|| colspan="2" |`U+E816`||20087b|||`U+E816` |- |FE 52|| colspan="2" |`U+E817`||20089c|||`U+E817` |- |FE 53|| colspan="2" |`U+E818`||200CCd|||`U+E818` |- |FE 54|| |`U+E819`|| colspan="3" |2E84 |- |FE 55|| |`U+E81A`|| colspan="3" |3473 |- |FE 56|| |`U+E81B`|| colspan="3" |3447 |- |FE 57|| |`U+E81C`|| colspan="3" |2E88 |- |FE 58|| |`U+E81D`|| colspan="3" |2E8B |- |FE 59|| colspan="2" |`U+E81E`|| colspan="2" |9FB4 |- |FE 5A|| |`U+E81F`|| colspan="3" |359E |- |FE 5B|| |`U+E820`|| colspan="3" |361A |- |FE 5C|| |`U+E821`|| colspan="3" |360E |- |FE 5D|| |`U+E822`|| colspan="3" |2E8C |- |FE 5E|| |`U+E823`|| colspan="3" |2E97 |- |FE 5F|| |`U+E824`|| colspan="3" |396E |- |FE 60|| |`U+E825`|| colspan="3" |3918 |- |FE 61|| colspan="2" |`U+E826`|| colspan="2" |9FB5 |- |FE 62|| |`U+E827`|| colspan="3" |39CF |- |FE 63|| |`U+E828`|| colspan="3" |39DF |- |FE 64|| |`U+E829`|| colspan="3" |3A73 |- |FE 65|| |`U+E82A`|| colspan="3" |39D0 |- |FE 66|| colspan="2" |`U+E82B`|| colspan="2" |9FB6 |- |FE 67|| colspan="2" |`U+E82C`|| colspan="2" |9FB7 |- |FE 68|| |`U+E82D`|| colspan="3" |3B4E |- |FE 69|| |`U+E82E`|| colspan="3" |3C6E |- |FE 6A|| |`U+E82F`|| colspan="3" |3CE0 |- |FE 6B|| |`U+E830`|| colspan="3" |2EA7 |- |FE 6C|| colspan="2" |`U+E831`||215D7e|||`U+E831` |- |FE 6D|| colspan="2" |`U+E832`|| colspan="2" |9FB8 |- |FE 6E|| |`U+E833`|| colspan="3" |2EAA |- |FE 6F|| |`U+E834`|| colspan="3" |4056 |- |FE 70|| |`U+E835`|| colspan="3" |415F |- |FE 71|| |`U+E836`|| colspan="3" |2EAE |- |FE 72|| |`U+E837`|| colspan="3" |4337 |- |FE 73|| |`U+E838`|| colspan="3" |2EB3 |- |FE 74|| |`U+E839`|| colspan="3" |2EB6 |- |FE 75|| |`U+E83A`|| colspan="3" |2EB7 |- |FE 76|| colspan="2" |`U+E83B`||2298Ff|||`U+E83B` |- |FE 77|| |`U+E83C`|| colspan="3" |43B1 |- |FE 78|| |`U+E83D`|| colspan="3" |43AC |- |FE 79|| |`U+E83E`|| colspan="3" |2EBB |- |FE 7A|| |`U+E83F`|| colspan="3" |43DD |- |FE 7B|| |`U+E840`|| colspan="3" |44D6 |- |FE 7C|| |`U+E841`|| colspan="3" |4661 |- |FE 7D|| |`U+E842`|| colspan="3" |464C |- |FE 7E|| colspan="2" |`U+E843`|| colspan="2" |9FB9 |- |FE 80|| |`U+E844`|| colspan="3" |4723 |- |FE 81|| |`U+E845`|| colspan="3" |4729 |- |FE 82|| |`U+E846`|| colspan="3" |477C |- |FE 83|| |`U+E847`|| colspan="3" |478D |- |FE 84|| |`U+E848`|| colspan="3" |2ECA |- |FE 85|| |`U+E849`|| colspan="3" |4947 |- |FE 86|| |`U+E84A`|| colspan="3" |497A |- |FE 87|| |`U+E84B`|| colspan="3" |497D |- |FE 88|| |`U+E84C`|| colspan="3" |4982 |- |FE 89|| |`U+E84D`|| colspan="3" |4983 |- |FE 8A|| |`U+E84E`|| colspan="3" |4985 |- |FE 8B|| |`U+E84F`|| colspan="3" |4986 |- |FE 8C|| |`U+E850`|| colspan="3" |499F |- |FE 8D|| |`U+E851`|| colspan="3" |499B |- |FE 8E|| |`U+E852`|| colspan="3" |49B7 |- |FE 8F|| |`U+E853`|| colspan="3" |49B6 |- |FE 90|| colspan="2" |`U+E854`|| colspan="2" |9FBA |- |FE 91|| colspan="2" |`U+E855`||241FEg|||`U+E855` |- |FE 92|| |`U+E856`|| colspan="3" |4CA3 |- |FE 93|| |`U+E857`|| colspan="3" |4C9F |- |FE 94|| |`U+E858`|| colspan="3" |4CA0 |- |FE 95|| |`U+E859`|| colspan="3" |4CA1 |- |FE 96|| |`U+E85A`|| colspan="3" |4C77 |- |FE 97|| |`U+E85B`|| colspan="3" |4CA2 |- |FE 98|| |`U+E85C`|| colspan="3" |4D13 |- |FE 99|| |`U+E85D`|| colspan="3" |4D14 |- |FE 9A|| |`U+E85E`|| colspan="3" |4D15 |- |FE 9B|| |`U+E85F`|| colspan="3" |4D16 |- |FE 9C|| |`U+E860`|| colspan="3" |4D17 |- |FE 9D|| |`U+E861`|| colspan="3" |4D18 |- |FE 9E|| |`U+E862`|| colspan="3" |4D19 |- |FE 9F|| |`U+E863`|| colspan="3" |4DAE |- |FE A0|| colspan="2" |`U+E864`|| colspan="2" |9FBB |- | colspan="5" | **참고** :a.GB18030-PUA-blue파란색은 개인 사용 영역을 나타낸다. :b.GB18030-2022-120087는 GB 18030-2022에서 `0x95329031`에 매핑된다. :c.GB18030-2022-220089는 GB 18030-2022에서 `0x95329033`에 매핑된다. :d.GB18030-2022-3200CC는 GB 18030-2022에서 `0x95329730`에 매핑된다. :e.GB18030-2022-4215D7는 GB 18030-2022에서 `0x9536B937`에 매핑된다. :f.GB18030-2022-52298F는 GB 18030-2022에서 `0x9630BA35`에 매핑된다. :g.GB18030-2022-6241FE는 GB 18030-2022에서 `0x9635B630`에 매핑된다. |}
# 국가 표준으로서
GB 18030의 첫 번째 버전인 GB 18030-2000 정보 기술 - 정보 교환용 중국어 코드 문자 집합 - 기본 집합 확장은 1바이트 및 2바이트 인코딩과 함께 한중일 통합 한자 확장 A(유니코드 3.0에 있는 문자들과 일치)에 대한 4바이트 인코딩으로 구성된다. 잠정적인 개인 할당을 포함한 이 부분집합의 해당 유니코드 코드 포인트는 전적으로 BMP에 있다. 이 부분들은 GB 18030-2000에서 완전히 필수적이다.2 대부분의 주요 컴퓨터 회사들은 이미 유니코드의 특정 버전을 바이너리 형식 및 OS 호출에 사용되는 기본 형식으로 표준화했다. 그러나 그들은 주로 유니코드 1.0에서 원래 정의된 BMP의 코드 포인트만 지원했으며, 이는 65,536개의 코드 포인트만 지원하고 종종 UCS-2로 16비트로 인코딩되었다. 이 표준은 기본적으로 GBK를 기반으로 하는 확장으로, 한중일 통합 한자 확장 A에 추가 문자가 포함되어 있다. GB 18030-2005 정보 기술 - 중국어 코드 문자 집합으로 지정된 두 번째 버전은 GB 18030-2000의 1바이트, 2바이트 및 4바이트 인코딩과 동일한 필수 부분집합을 가지고 있다.3 이 버전은 또한 BMP 외부에 있는 전체 한중일 통합 한자 확장 B를 4바이트 인코딩 섹션에 포함하며 권장 지원 요구사항이다.quote=Page 4 同时达到以下两个要求的产品，为符合GB 18030-2005强制部分的产品：①产品可以正确输入、输出、处理GB 18030-2005强制部分规定的全部汉字字符；②产品可以正确识别GB 18030-2005强制性部分规定的全部汉字字符对应的编码。 [A product compliant with the mandatory part of GB 18030 must be able to correctly a) input, output and process all Chinese characters defined in the mandatory set; b) recognize encodings for characters in the mandatory set.] 그러나 4바이트 영역에 한중일 통합 한자 확장 B를 포함하는 것이 정보 처리 동안 유지되어야 하므로 소프트웨어는 더 이상 문자를 16비트 고정 너비 엔티티(UCS-2)로 취급할 수 없다. 따라서 그들은 데이터를 가변 너비 형식(UTF-8 또는 UTF-16과 같이 가장 일반적인 선택)으로 처리하거나 더 큰 고정 너비 형식(즉, UTF-32)으로 이동해야 한다. 마이크로소프트는 윈도우 2000에서 UCS-2에서 UTF-16으로 변경했다. 이 버전은 유니코드 3.1과 일치하며, 한글(한국어), 몽골어(만주 문자, 클리어 스크립트, 시베 허르겐, 갈리크 포함), 따이느아어, 티베트 문자, 위구르어/카자흐어/키르기스어 및 이 문자에 대한 지원도 제공했다. 세 번째이자 최신 버전인 GB 18030-2022 정보 기술 - 중국어 코드 문자 집합은 GB 18030-2005에서 권장 사항으로 지원되던 한중일 통합 한자 확장 B를 의무화하며, 강희자전 부수 및 한중일 통합 한자 URO, 확장 C, D, E, F를 포함한 유니코드 11.0까지의 업데이트를 포함한다. 아랍계 문자의 일부, 따이르, 신따이르, 따이땀, 리수어, 먀오와 같은 추가 언어도 GB 18030-2022에서 인식된다. GB 18030-2022는 또한 세 가지 구현 수준을 도입하며, "이 표준을 사용하는 모든 제품은 구현 수준 1을 구현해야 한다"는 요구사항에는 유니코드 3.1과 유니코드 11.0 사이에 추가된 4바이트 인코딩 영역의 66개의 새로운 BMP 문자가 포함된다. 구현 수준 2는 통용규범한자표의 지원을 요구하며, 구현 수준 3은 표준의 다른 모든 지정된 영역을 요구한다. 한중일 통합 한자 확장 I 2022년 말부터 2023년까지 GB 18030-2022에 대한 추가 개정안 초안이 대중에게 공개될 예정이다. 현재 초안은 한자 모양 설명 문자, 한중일 통합 한자 URO, 확장 A, B, C, G, H, I에 대한 유니코드 15.1까지의 업데이트를 포함한다.language=enauthor=China National Bodyid=ISO/IEC JTC1/SC2/WG2/IRG N2623; UTC L2/23-240 원래 2022년 말에 10번째 평면(아직 이름이 없는 유니코드 부가 평면)에 897개의 새로운 한자 문자를 배치하여 중국의 시민 실명 인증을 위해 사용될 예정이었으나, 결국 전문가 검토 후 622개 문자로 축소된 레퍼토리는 2023년 9월에 한중일 통합 한자 확장 I 블록으로 유니코드 15.1에 신속하게 포함되었다.id=ISO/IEC JTC1/SC2 N4852, WG2 N5222; UTC L2/23-115 이에 따라 개정안 초안은 확장 I 코드 포인트를 사용하도록 수정되었다.
# 매핑 Technical_details
GB 18030은 1바이트(ASCII), 2바이트(확장 GBK), 또는 4바이트(UTF) 인코딩을 정의한다. 2바이트 코드는 조회표에 정의되어 있으며, 4바이트 코드는 UCS에서 인코딩되지 않은 부분을 채우기 위해 순차적으로(따라서 알고리즘적으로) 정의된다. GB 18030은 GBK의 단점을 물려받았는데, 가장 눈에 띄는 것은 GB18030 시퀀스에서 ASCII 문자를 안전하게 찾기 위해 특별한 코드가 필요하다는 점이다. {| Table |+ GB 18030 인코딩3252GB18030-2000과 유니코드 간의 공인 매핑 테이블. ICUSnd International Components for Unicode. 2001-02-21. Accessed 2016-09-04. |- ! colspan=4 | GB 18030 ! rowspan=2 | 코드 포인트코드 포인트에는 66개의 유니코드 비문자가 포함된다. ! rowspan=2 | 유니코드 |- ! 바이트 1 (최상위 바이트) !! 바이트 2 !! 바이트 3 !! 바이트 4 |- | 00 – 7F ! colspan=3 | | | 128 | 0000 – 007F |- | 80 ! colspan=3 | | — | 무효ICU는 이 코드 포인트를 잘못 유효하다고 간주하는 것으로 보이며, 이는 게시된 표준의 어느 버전에도 없다. WHATWG는 이 바이트를 유니버설 gb2312-gbk-gb18030 디코더에서 U+20AC (GBK 유로 기호)에 할당한다. |- | 81 – FE || 40 – FE (7F 제외)GBK (문자 인코딩)#인코딩을 참조하라. ! colspan=2 | | | 23940 | rowspan=2 | 0080 – FFFF (D800 – DFFF 제외)84 39 FE 39까지 제공한다. |- | 81 – 84 | rowspan=3 | 30 – 39 | rowspan=3 | 81 – FE | rowspan=3 | 30 – 39 | | 39420 |- | 85 | — (12600) | 향후 문자 확장용으로 예약됨 |- | 86 – 8F | — (126000) | 향후 한자 확장용으로 예약됨 |- | colspan=4 | 할당되지 않음 | — | D800 – DFFF이들은 대리 코드 포인트이다. 이들은 UTF-16 인코딩 외부에서는 의미가 없다. |- | 90 – E3 | rowspan=3 | 30 – 39 | rowspan=3 | 81 – FE | rowspan=3 | 30 – 39 | | 1048576 | `0000` – `FFFF` |- | E4 – FC | — (315000) | 향후 표준 확장용으로 예약됨 |- | FD – FE | — (25200) | 사용자 정의 |- | FF ! colspan=3 | | — | 무효 |- ! colspan=4 | 합계 ! | 1112064 ! |} 1바이트 및 2바이트 코드 포인트는 본질적으로 GBK에 유로 기호, 할당되지 않거나 사용자 정의된 포인트에 대한 PUA 매핑, 그리고 수직 구두점이 추가된 것이다. 4바이트 스킴은 각각 2바이트로 구성된 두 개의 단위로 생각할 수 있다. 각 단위는 GBK 2바이트 문자와 유사한 형식을 가지지만 두 번째 바이트의 값 범위가 0x30–0x39(십진수 숫자에 대한 ASCII 코드)이다. 첫 번째 바이트는 이전과 마찬가지로 0x81부터 0xFE까지의 범위를 가진다. 이는 GBK에 안전한 문자열 검색 루틴이 GB18030에도 합리적으로 안전해야 한다는 것을 의미한다(기본적인 바이트 지향 검색 루틴이 EUC에 합리적으로 안전한 것과 유사하게). 이는 총 1,587,600(126×10×126×10)개의 가능한 4바이트 시퀀스를 제공하며, 이는 유니코드의 1,112,064(17×65536 − 2048 대리쌍)개의 할당, 예약, 비문자 코드 포인트를 커버하기에 충분하다. 불행히도, 문제를 더욱 복잡하게 만드는 것은 4바이트 시퀀스와 해당 코드 포인트 간의 번역에 대한 간단한 규칙이 없다는 것이다. 대신, 코드는 다른 방식으로 매핑되지 않은 유니코드 코드 포인트에 **만** 순차적으로 할당된다(첫 번째 바이트가 가장 중요한 부분을, 마지막 바이트가 가장 덜 중요한 부분을 포함한다).또한, U+E7C7과 U+1E3F의 인코딩이 서로 바뀌었기 때문에, U+E7C7은 표준의 2005년 판에서 U+1E3E (81 35 F4 36)와 U+1E40 (81 35 F4 38) 사이에 81 35 F4 37로 인코딩된다. 따라서 4바이트 코드를 다른 방식으로 매핑되지 않은 코드 포인트에 할당하는 데 있어서는 2000년 판만 완전히 순차적이다. 예를 들어: U+00DE (Þ) → 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 WHATWG 및 W3C 버전의 GB 18030에서는 코드 포인트를 효율적으로 변환하기 위해 오프셋 테이블이 사용된다.access-date=2016-09-24 ICU와 glibc는 큰 순차 블록에서 공간 낭비를 피하기 위해 유사한 범위 정의를 사용한다.
# 지원
Windows support
## 인코딩
GB공백18030은 윈도우 95 출시 이후 코드 페이지 54936으로 윈도우에서 지원되었다.language=en-us 윈도우 2000 및 XP는 GB18030 지원 패키지를 제공한다.url-status=dead 오픈 소스 PostgreSQL 데이터베이스는 UTF-8에 대한 완전한 지원을 통해 즉, UTF-8로의 변환 및 변환을 통해 GB18030을 지원한다. 마찬가지로 마이크로소프트 SQL 서버는 UTF-16으로의 변환 및 변환을 통해 GB18030을 지원한다. 보다 구체적으로, 윈도우에서 GB18030 인코딩을 지원한다는 것은 **코드 페이지 54936**이 `MultiByteToWideChar` 및 `WideCharToMultiByte`에 의해 지원된다는 의미이다. 매핑의 하위 호환성으로 인해, 코드 페이지 54936이 지원되지 않더라도 많은 GB18030 파일은 레거시 코드 페이지 936, 즉 GBK로 실제로 성공적으로 열 수 있다. 그러나 이것은 해당 파일에 GBK 문자만 포함된 경우에만 해당된다. 파일에 GBK에 없는 문자가 포함된 경우 로딩이 실패하거나 손상된 결과가 발생한다(예시는 #Mapping 참조). 대부분의 리눅스 배포판에서 사용되는 문자 코덱 라이브러리인 GNU Glibc의 gconv는 2.2부터 GB 18030-2000을 지원하며,access-date=29 November 2016 2.14부터는 GB 18030-2005를 지원한다.access-date=29 November 2016 특히 glibc는 왕복 변환을 달성하기 위해 GB 18030-2005에 대한 비-PUA 매핑을 포함한다.access-date=29 November 2016 시그윈과 같은 비-glibc 유닉스 유사 환경에서 자주 사용되는 대체 Iconv 구현인 GNU libiconv는 버전 1.4부터 GB 18030을 지원한다.access-date=2016-10-13 2022년 현재 "비중국어 스크립트 지원은 계속 선택 사항이다"language=en (아마도 디스플레이/글꼴 지원만 해당; 중국에서는 인코딩이 완전한 UTF이므로). 이 표준은 영어/ASCII를 지원하며 "GB 18030-2022에서 인식되는 다음 비중국어 스크립트는 아랍어, 티베트어, 몽골어, 따이르어, 신따이르어, 따이땀어, 이, 리수어, 한글(한국어), 먀오어이다."
## 글꼴
윈도우용 GB18030 지원 패키지에는 두 개의 중국어 글꼴인 SimSun-18030과 NSimSun-18030을 결합한 TrueType 글꼴 컬렉션 파일인 SimSun18030.ttc가 포함되어 있다. SimSun 18030 글꼴은 유니코드 2.1의 모든 문자와 유니코드 CJK 통합 한자 확장 A 블록에서 발견되는 새로운 문자를 포함하지만, 이름과는 달리 GB 18030으로 인코딩할 수 있는 모든 유니코드 코드 포인트(약 100만 개)에 대한 글리프를 포함하지 않는다. GB 18030 준수 인증은 필수(2바이트 및 CJK 확장 A) 중국어 부분의 글리프에 대한 정확한 처리 및 인식만을 요구한다.quote=Page 4 同时达到以下两个要求的产品，为符合GB 18030-2005强制部分的产品：①产品可以正确输入、输出、处理GB 18030-2005强制部分规定的全部汉字字符；②产品可以正确识别GB 18030-2005强制性部分规定的全部汉字字符对应的编码。 [A product compliant with the mandatory part of GB 18030 must be able to correctly a) input, output and process all Chinese characters defined in the mandatory set; b) recognize encodings for characters in the mandatory set.] Alt URL4 그럼에도 불구하고, 표준에서 PUA 문자의 요구사항은 이 구현을 방해했다.quote=Besides, supporting PUA code points in the context of the Noto CJK and Source Han fonts is a total non-starter, mainly because they are Pan-CJK typefaces, and PUA usage is extremely dangerous in such contexts.[...] One of my friends at CESI shared with me the text from the final draft a few days ago. This confirmed that the PUA requirement for the 24 characters is being lifted. 마이크로소프트에서 제공하는 Microsoft YaHei 및 DengXian은 2023년에 GB 18030-2022 구현 수준 2에 맞게 업데이트되었으며, SimSun은 구현 수준 3에 맞게 업데이트되었다.access-date=25 March 2024 본고딕(및 그 대응 글꼴인 Noto Sans CJK)은 2022년 11월 기준으로 GB 18030 업데이트가 발표되었을 때 이미 GB 18030-2022 구현 수준 2를 준수한다. 그러나 본명조(및 그 대응 글꼴인 Noto Serif CJK)는 당시에는 준수하지 않아, 글꼴이 구현 수준 2를 준수하도록 업데이트가 제공되었다. 마찬가지로 Microsoft YaHei 및 PingFang (Apple)은 GB 18030-2022 구현 수준 2를 준수하기 위해 구현 수준 1과 관련된 소수의 URO 추가가 필요하다. HAN NOMaccess-date=2016-10-13 및 Hanazono Minchourl-status=dead와 같은 다른 CJK 글꼴군은 SimSun-18030 또는 SimSun (Founder Extended)보다 유니코드 CJK 확장 블록에 대한 더 넓은 범위를 제공하지만, GB 18030에 정의된 모든 코드 포인트를 지원하지는 않는다.
# 내용주
Notelist