Стандарт ГБ 18030-2022
Доктор Кен Лунде
Немалую часть своей профессиональной жизни я трачу на отслеживание региональных стандартов наборов символов с чрезвычайно сильным акцентом на стандарты для Восточной Азии. Когда важный стандарт публикуется или обновляется, я беру на себя ответственность изучить, что изменилось в практическом смысле, и сообщить об этом сообществу разработчиков. Это цель данной конкретной статьи.
История и обзор
Китай впервые опубликовал стандарт GB 18030 в 2000 году как GB 18030-2000 (信息技术 信息交换用汉字编码字符集 基本集的扩充) для базового набора ), и это было пятью годами позже пересмотрен как GB 18030-2005 (信息技术 中文编码字符集Информационные технологии — китайский кодированный набор символов ). Обратите внимание, что название изменено. Семнадцать лет спустя под тем же названием был опубликован GB 18030-2022.
Предыдущие версии этого стандарта просто указывали требуемый репертуар в соответствии с диапазонами кодовых точек. Версия 2022 года теперь определяет в Разделе 9 три уровня реализации . Основное изменение, о котором следует помнить, заключается в том, что для уровня реализации 1 требуются следующие 66 идеограмм в диапазонах 9FA6..9FB3 и 9FBC..9FEF, которые не требовались в версии 2005 года (идеограммы в промежуточном диапазоне, 9FB4..9FBB, были частью обязательного репертуара в версии 2005 года и, конечно, все еще необходимы):
0x82358F33 U+9FA6 龦
0x82358F34 U+9FA7 龧
0x82358F35 U+9FA8 龨
0x82358F36 U+9FA9 龩
0x82358F37 U+9FAA 龪
0x82358F38 U+9FAB 龫
0x82358F39 U+9FAC 龬
0x82359030 U+9FAD 龭
0x82359031 U+9FAE 龮
0x82359032 U+9FAF 龯
0x82359033 U+9FB0 龰
0x82359034 U+9FB1 龱
0x82359035 U+9FB2 龲
0x82359036 U+9FB3 龳
0x82359135 U+9FBC 龼
0x82359136 U+9FBD 龽
0x82359137 U+9FBE 龾
0x82359138 U+9FBF 龿
0x82359139 U+9FC0 鿀
0x82359230 U+9FC1 鿁
0x82359231 U+9FC2 鿂
0x82359232 U+9FC3 鿃
0x82359233 U+9FC4 鿄
0x82359234 U+9FC5 鿅
0x82359235 U+9FC6 鿆
0x82359236 U+9FC7 鿇
0x82359237 U+9FC8 鿈
0x82359238 U+9FC9 鿉
0x82359239 U+9FCA 鿊
0x82359330 U+9FCB 鿋
0x82359331 U+9FCC 鿌
0x82359332 U+9FCD 鿍
0x82359333 U+9FCE 鿎
0x82359334 U+9FCF 鿏
0x82359335 U+9FD0 鿐
0x82359336 U+9FD1 鿑
0x82359337 U+9FD2 鿒
0x82359338 U+9FD3 鿓
0x82359339 U+9FD4 鿔
0x82359430 U+9FD5 鿕
0x82359431 U+9FD6 鿖
0x82359432 U+9FD7 鿗
0x82359433 U+9FD8 鿘
0x82359434 U+9FD9 鿙
0x82359435 U+9FDA 鿚
0x82359436 U+9FDB 鿛
0x82359437 U+9FDC 鿜
0x82359438 U+9FDD 鿝
0x82359439 U+9FDE 鿞
0x82359530 U+9FDF 鿟
0x82359531 U+9FE0 鿠
0x82359532 U+9FE1 鿡
0x82359533 U+9FE2 鿢
0x82359534 U+9FE3 鿣
0x82359535 U+9FE4 鿤
0x82359536 U+9FE5 鿥
0x82359537 U+9FE6 鿦
0x82359538 U+9FE7 鿧
0x82359539 U+9FE8 鿨
0x82359630 U+9FE9 鿩
0x82359631 U+9FEA 鿪
0x82359632 U+9FEB 鿫
0x82359633 U+9FEC 鿬
0x82359634 U+9FED 鿭
0x82359635 U+9FEE 鿮
0x82359636 U+9FEF 鿯
Уровень реализации 1 также гласит, что реализации могут выбрать поддержку одного или нескольких некитайских (также называемых региональными или меньшинствами) сценариев, чьи четырехбайтовые диапазоны кодирования GB 18030, количество символов и имена блоков Unicode показаны в таблице 3 GB 18030- 2022, который воспроизведен ниже с именами блоков Unicode:
0x81318132–0x81319934 42 Arabic
0x8430BA32–0x8430FE35 59 Arabic Presentation Forms-A
0x84318730–0x84319530 84 Arabic Presentation Forms-B
0x8132E834–0x8132FD31 193 Tibetan
0x8134D238–0x8134E337 149 Mongolian
0x9034C538–0x9034C730 13 Mongolian Supplement
0x8134F434–0x8134F830 35 Tai Le
0x8134F932–0x81358437 83 New Tai Lue
0x81358B32–0x81359935 127 Tai Tham
0x82359833–0x82369435 1215 Yi Syllables
0x82369535–0x82369A32 48 Lisu
0x81339D36–0x8133B635 69 Hangul Jamo
0x8139A933–0x8139B734 51 Hangul Compatibility Jamo
0x8237CF35–0x8336BE36 3431 Hangul Syllables
0x9232C636–0x9232D635 133 Miao
0x81398B32–0x8139A135 214 Kangxi Radicals
0x8139EE39–0x82358738 6530 CJK Unified Ideographs Extension A
0x82358F33–0x82359636 66 CJK Unified Ideographs (URO)
0x95328236–0x9835F336 42711 CJK Unified Ideographs Extension B
0x9835F738–0x98399E36 4149 CJK Unified Ideographs Extension C
0x98399F38–0x9839B539 222 CJK Unified Ideographs Extension D
0x9839B632–0x9933FE33 5762 CJK Unified Ideographs Extension E
0x99348138–0x9939F730 7473 CJK Unified Ideographs Extension F
Тем, кто знаком с блоками CJK Unified Ideographs, может быть интересно, почему расширение A, включающее 6582 иероглифов (по крайней мере, до версии Unicode 13.0), показывает только 6530 в таблице выше. Недостающие 52 идеограммы фактически отображаются из двухбайтовой области кодировки GB 18030 — во всех трех версиях стандарта GB 18030 — следующим образом:
0xFE56 U+3447 㑇
0xFE55 U+3473 㑳
0xFE5A U+359E 㖞
0xFE5C U+360E 㘎
0xFE5B U+361A 㘚
0xFE60 U+3918 㤘
0xFE5F U+396E 㥮
0xFE62 U+39CF 㧏
0xFE65 U+39D0 㧐
0xFE63 U+39DF 㧟
0xFE64 U+3A73 㩳
0xFE68 U+3B4E 㭎
0xFE69 U+3C6E 㱮
0xFE6A U+3CE0 㳠
0xFE6F U+4056 䁖
0xFE70 U+415F 䅟
0xFE72 U+4337 䌷
0xFE78 U+43AC 䎬
0xFE77 U+43B1 䎱
0xFE7A U+43DD 䏝
0xFE7B U+44D6 䓖
0xFE7D U+464C 䙌
0xFE7C U+4661 䙡
0xFE80 U+4723 䜣
0xFE81 U+4729 䜩
0xFE82 U+477C 䝼
0xFE83 U+478D 䞍
0xFE85 U+4947 䥇
0xFE86 U+497A 䥺
0xFE87 U+497D 䥽
0xFE88 U+4982 䦂
0xFE89 U+4983 䦃
0xFE8A U+4985 䦅
0xFE8B U+4986 䦆
0xFE8D U+499B 䦛
0xFE8C U+499F 䦟
0xFE8F U+49B6 䦶
0xFE8E U+49B7 䦷
0xFE96 U+4C77 䱷
0xFE93 U+4C9F 䲟
0xFE94 U+4CA0 䲠
0xFE95 U+4CA1 䲡
0xFE97 U+4CA2 䲢
0xFE92 U+4CA3 䲣
0xFE98 U+4D13 䴓
0xFE99 U+4D14 䴔
0xFE9A U+4D15 䴕
0xFE9B U+4D16 䴖
0xFE9C U+4D17 䴗
0xFE9D U+4D18 䴘
0xFE9E U+4D19 䴙
0xFE9F U+4DAE 䶮
Что касается исправлений репрезентативных глифов, то одно, которое я записал более восьми лет назад в этой статье блога CJK Type для U+4548 䕈 в расширении A, было исправлено в GB 18030-2022. Ниже приведен фрагмент кодовой таблицы GB 18030-2022:
Хотя технически это не является исправлением как таковым , GB 18030-2022 является самым первым стандартом набора символов GB, представительный глиф которого U + FFE5 ¥ FULLWIDTH YEN SIGN является более правильной формой двойной перекладины. Все предыдущие стандарты набора символов GB, которые включают этот символ, включают форму с одной перекладиной, которая на самом деле не встречается в дикой природе. Ниже приведен фрагмент кодовой таблицы GB 18030-2022:
Отсутствие требований PUA
За исключением 24 символов, все необходимые символы в GB 18030-2005 имели эквивалентные символы в стандарте Unicode. Символы, которые ранее должны были быть представлены с использованием кодовых точек PUA ( Private Use Area ), можно разделить на две группы. Первая группа включает в себя изменения отображения для 18 символов. В следующем списке представлены двух- или четырехбайтовые кодовые точки GB 18030, их сопоставления со стандартом Unicode в GB 18030-2005, их сопоставления со стандартом Unicode в GB 18030-2022 и отображаемые символы, если таковые имеются. в таблицах кодов GB 18030-2022 (на стр. 11, 81, 160 и 242):
0xA6D9 U+E78D U+FE10 ︐
0xA6DA U+E78E U+FE12 ︒
0xA6DB U+E78F U+FE11 ︑
0xA6DC U+E790 U+FE13 ︓
0xA6DD U+E791 U+FE14 ︔
0xA6DE U+E792 U+FE15 ︕
0xA6DF U+E793 U+FE16 ︖
0xA6EC U+E794 U+FE17 ︗
0xA6ED U+E795 U+FE18 ︘
0xA6F3 U+E796 U+FE19 ︙
0xFE59 U+E81E U+9FB4 龴
0xFE61 U+E826 U+9FB5 龵
0xFE66 U+E82B U+9FB6 龶
0xFE67 U+E82C U+9FB7 龷
0xFE6D U+E832 U+9FB8 龸
0xFE7E U+E843 U+9FB9 龹
0xFE90 U+E854 U+9FBA 龺
0xFEA0 U+E864 U+9FBB 龻
0x82359037 U+9FB4 U+E81E (none)
0x82359038 U+9FB5 U+E826 (none)
0x82359039 U+9FB6 U+E82B (none)
0x82359130 U+9FB7 U+E82C (none)
0x82359131 U+9FB8 U+E832 (none)
0x82359132 U+9FB9 U+E843 (none)
0x82359133 U+9FBA U+E854 (none)
0x82359134 U+9FBB U+E864 (none)
0x84318236 U+FE10 U+E78D (none)
0x84318237 U+FE11 U+E78F (none)
0x84318238 U+FE12 U+E78E (none)
0x84318239 U+FE13 U+E790 (none)
0x84318330 U+FE14 U+E791 (none)
0x84318331 U+FE15 U+E792 (none)
0x84318332 U+FE16 U+E793 (none)
0x84318333 U+FE17 U+E794 (none)
0x84318334 U+FE18 U+E795 (none)
0x84318335 U+FE19 U+E796 (none)
0xFE51 U+E816 (none)
0xFE52 U+E817 (none)
0xFE53 U+E818 (none)
0xFE6C U+E831 (none)
0xFE76 U+E83B (none)
0xFE91 U+E855 (none)
0x95329031 U+20087
0x95329033 U+20089
0x95329730 U+200CC
0x9536B937 U+215D7
0x9630BA35 U+2298F
0x9635B630 U+241FE
Некоторые из необходимых символов, а точнее 21 идеограмма, находились в блоке CJK Compatibility Ideographs. 12 из них на самом деле являются унифицированными иероглифами CJK, которые все еще требуются в соответствии с GB 18030-2022. Однако девять, которые являются фактическими иероглифами совместимости CJK, больше не требуются, и символ не отображается в кодовых таблицах GB 18030-2022 (на стр. 80 и 81). В следующем списке представлены двухбайтовые кодовые точки GB 18030, их сопоставление со стандартом Unicode в GB 18030-2000, GB 18030-2005 и GB 18030-2022, сами иероглифы и их канонически эквивалентные унифицированные иероглифы CJK в скобках. :
0xFD9C U+F92C 郎 (U+90CE 郎)
0xFD9D U+F979 凉 (U+51C9 凉)
0xFD9E U+F995 秊 (U+79CA 秊)
0xFD9F U+F9E7 裏 (U+88CF 裏)
0xFDA0 U+F9F1 隣 (U+96A3 隣)
0xFE40 U+FA0C 兀 (U+5140 兀)
0xFE41 U+FA0D 嗀 (U+55C0 嗀)
0xFE47 U+FA18 礼 (U+793C 礼)
0xFE49 U+FA20 蘒 (U+8612 蘒)
Требование TGH 2013
Следует ожидать дополнительных дополнений к необходимой части стандарта GB 18030, и обновление 2022 года не является исключением. В первом разделе этой статьи упоминались 66 иероглифов, которые теперь требуются для уровня реализации 1 .
Что касается требований для уровня реализации 2 , Китай опубликовал 通用规范汉字表 ( Tōngyòng Guīfàn Hànzìbiǎo ; также известный как TGH 2013) в 2013 году, в котором перечислены 8105 иероглифов, называемых hanzi (汉字hànzì ) на китайском языке. Эти идеограммы разделены на три отдельных уровня, которые состоят из 3500, 3000 и 1605 идеограмм соответственно.
Если принять во внимание уровень реализации 1 , который включает диапазон 4E00..9FEF, то в TGH 2013 будет покрыто 7 909 из 8 105 идеограмм. Остается 196 идеограмм, которые находятся в расширении B (36), расширении C (44). , блоки расширения D (8) и расширения E (108), как указано ниже (их четырехбайтовые кодовые точки GB 18030, их сопоставление со стандартом Unicode в GB 18030-2005 и GB 18030-2022, а также сами иероглифы показаны ):
Расширение B — 36 идеограмм — Unicode Version 3.1 (2001 г.)
0x9532A632 U+20164
0x9533AA30 U+20676
0x9534CE36 U+20CD0
0x9535FE34 U+2139A
0x95368C35 U+21413
0x9632F737 U+235CB
0x9634A937 U+23C97
0x9634A938 U+23C98
0x9634D133 U+23E23
0x96378333 U+249DB
0x96379335 U+24A7D
0x96379B31 U+24AC9
0x9639A936 U+25532
0x9639AE34 U+25562
0x9639B534 U+255A8
0x9731A435 U+25ED7
0x9731F837 U+26221
0x9732B837 U+2648D
0x9732E936 U+26676
0x97338538 U+2677C
0x9733E930 U+26B5C
0x9733FC37 U+26C21
0x97388237 U+27FF9
0x9738EA36 U+28408
0x9739AB30 U+28678
0x9739AD39 U+28695
0x9739CF30 U+287E0
0x9830A833 U+28B49
0x9830C137 U+28C47
0x9830C235 U+28C4F
0x9830C237 U+28C51
0x9830C330 U+28C54
0x9830FD31 U+28E99
0x9834B536 U+29F7E
0x9834B631 U+29F83
0x9834B730 U+29F8C
0x98368F39 U+2A7DD
0x9836AC35 U+2A8FB
0x9836AF33 U+2A917
0x9836CB34 U+2AA30
0x9836CC30 U+2AA36
0x9836CF34 U+2AA58
0x9837D838 U+2AFA2
0x98388137 U+2B127
0x98388138 U+2B128
0x98388333 U+2B137
0x98388334 U+2B138
0x98389535 U+2B1ED
0x9838B130 U+2B300
0x9838BA39 U+2B363
0x9838BC31 U+2B36F
0x9838BC34 U+2B372
0x9838BD35 U+2B37D
0x9838CB30 U+2B404
0x9838CC32 U+2B410
0x9838CC35 U+2B413
0x9838D433 U+2B461
0x9838E137 U+2B4E7
0x9838E235 U+2B4EF
0x9838E332 U+2B4F6
0x9838E335 U+2B4F9
0x9838E535 U+2B50D
0x9838E536 U+2B50E
0x9838E936 U+2B536
0x9838F536 U+2B5AE
0x9838F537 U+2B5AF
0x9838F631 U+2B5B3
0x9838FB33 U+2B5E7
0x9838FC36 U+2B5F4
0x98398236 U+2B61C
0x98398237 U+2B61D
0x98398336 U+2B626
0x98398337 U+2B627
0x98398338 U+2B628
0x98398430 U+2B62A
0x98398432 U+2B62C
0x98398E37 U+2B695
0x98398E38 U+2B696
0x98399131 U+2B6AD
0x98399735 U+2B6ED
0x9839AA33 U+2B7A9
0x9839AD31 U+2B7C5
0x9839B034 U+2B7E6
0x9839B233 U+2B7F9
0x9839B236 U+2B7FC
0x9839B336 U+2B806
0x9839B430 U+2B80A
0x9839B538 U+2B81C
0x9839C534 U+2B8B8
0x9839FA31 U+2BAC7
0x99308B33 U+2BB5F
0x99308B36 U+2BB62
0x99308E32 U+2BB7C
0x99308E39 U+2BB83
0x99309E31 U+2BC1B
0x9930C039 U+2BD77
0x9930C235 U+2BD87
0x9930CD37 U+2BDF7
0x9930D237 U+2BE29
0x99318739 U+2C029
0x99318830 U+2C02A
0x99319437 U+2C0A9
0x99319830 U+2C0CA
0x9931B237 U+2C1D5
0x9931B331 U+2C1D9
0x9931B633 U+2C1F9
0x9931C334 U+2C27C
0x9931C436 U+2C288
0x9931C734 U+2C2A4
0x9931D239 U+2C317
0x9931D937 U+2C35B
0x9931DA33 U+2C361
0x9931DA36 U+2C364
0x9931F738 U+2C488
0x9931F930 U+2C494
0x9931F933 U+2C497
0x99328C34 U+2C542
0x9932A133 U+2C613
0x9932A138 U+2C618
0x9932A237 U+2C621
0x9932A335 U+2C629
0x9932A337 U+2C62B
0x9932A338 U+2C62C
0x9932A339 U+2C62D
0x9932A431 U+2C62F
0x9932A630 U+2C642
0x9932A638 U+2C64A
0x9932A639 U+2C64B
0x9932BD34 U+2C72C
0x9932BD37 U+2C72F
0x9932C839 U+2C79F
0x9932CC33 U+2C7C1
0x9932D233 U+2C7FD
0x9932E833 U+2C8D9
0x9932E838 U+2C8DE
0x9932E931 U+2C8E1
0x9932EA39 U+2C8F3
0x9932EC39 U+2C907
0x9932ED32 U+2C90A
0x9932EF31 U+2C91D
0x99338830 U+2CA02
0x99338932 U+2CA0E
0x99339433 U+2CA7D
0x99339837 U+2CAA9
0x9933A535 U+2CB29
0x9933A539 U+2CB2D
0x9933A630 U+2CB2E
0x9933A633 U+2CB31
0x9933A730 U+2CB38
0x9933A731 U+2CB39
0x9933A733 U+2CB3B
0x9933A737 U+2CB3F
0x9933A739 U+2CB41
0x9933A838 U+2CB4A
0x9933A932 U+2CB4E
0x9933AA34 U+2CB5A
0x9933AA35 U+2CB5B
0x9933AB34 U+2CB64
0x9933AB39 U+2CB69
0x9933AC32 U+2CB6C
0x9933AC35 U+2CB6F
0x9933AC39 U+2CB73
0x9933AD32 U+2CB76
0x9933AD34 U+2CB78
0x9933AD38 U+2CB7C
0x9933B331 U+2CBB1
0x9933B435 U+2CBBF
0x9933B436 U+2CBC0
0x9933B630 U+2CBCE
0x9933C336 U+2CC56
0x9933C435 U+2CC5F
0x9933D335 U+2CCF5
0x9933D336 U+2CCF6
0x9933D433 U+2CCFD
0x9933D435 U+2CCFF
0x9933D438 U+2CD02
0x9933D439 U+2CD03
0x9933D536 U+2CD0A
0x9933E235 U+2CD8B
0x9933E237 U+2CD8D
0x9933E239 U+2CD8F
0x9933E330 U+2CD90
0x9933E435 U+2CD9F
0x9933E436 U+2CDA0
0x9933E534 U+2CDA8
0x9933E539 U+2CDAD
0x9933E630 U+2CDAE
0x9933E939 U+2CDD5
0x9933F036 U+2CE18
0x9933F038 U+2CE1A
0x9933F137 U+2CE23
0x9933F230 U+2CE26
0x9933F234 U+2CE2A
0x9933FA36 U+2CE7C
0x9933FB38 U+2CE88
0x9933FC39 U+2CE93
Что касается реализации шрифтов, только упрощенные китайские шрифты семейств шрифтов Noto Sans CJK (Google), Source Han Mono (Adobe) и Source Han Sans (Adobe) уже соответствуют уровню реализации 2 GB 18030-2022 в силу дальновидность со стороны их первоначальных разработчиков (также известных как я ). Microsoft YaHei (Microsoft), Noto Serif CJK (Google), PingFang (Apple) и Source Han Serif (Adobe) — по крайней мере, текущие версии на момент написания этой статьи — требуют небольшого количества дополнений URO, связанных с уровнем реализации 1. чтобы соответствовать GB 18030-2022Уровень реализации 2 . Как обычно, я записал кровавые подробности.
Совет для профессионалов. Если вы хотите узнать, как реализовать реализацию шрифтов на основе GB 18030 в будущем, сначала рассмотрите следующие два ключевых момента:
- GB 18030 синхронизируется со стандартом ISO/IEC 10646, а не со стандартом Unicode. Содержимое GB 18030-2022 синхронизировано со стандартом ISO/IEC 10646:2017 (он же Пятое издание), который эквивалентен Unicode версии 11.0. Это объясняет, почему диапазон 9FF0..9FFF не включен в уровень реализации 1 . Эти 16 иероглифов были добавлены к URO в версиях Unicode 13.0 (13) и 14.0 (3).
- Новые версии GB 18030 постепенно включают иероглифы, которые добавляются к URO, прецедент которых был установлен GB 18030-2022. Я предсказал это и, следовательно, предсказываю, что то же самое будет верно и для иероглифов, добавленных к расширению A. Ключевым моментом здесь является то, что это единственные два блока унифицированных иероглифов CJK, которые требуются полностью, и это требование логически распространяется на любой присоединяемые к ним идеограммы. Это повлияет на уровень реализации 1 , что означает критическое значение для реализации шрифтов. Блоки URO и Extension A теперь заполнены, начиная с версий Unicode 14.0 и 13.0 соответственно.
УРО — 13 идеограмм — Unicode Version 13.0 (2020)
0x82359637 U+9FF0 鿰
0x82359638 U+9FF1 鿱
0x82359639 U+9FF2 鿲
0x82359730 U+9FF3 鿳
0x82359731 U+9FF4 鿴
0x82359732 U+9FF5 鿵
0x82359733 U+9FF6 鿶
0x82359734 U+9FF7 鿷
0x82359735 U+9FF8 鿸
0x82359736 U+9FF9 鿹
0x82359737 U+9FFA 鿺
0x82359738 U+9FFB 鿻
0x82359739 U+9FFC 鿼
0x82359830 U+9FFD 鿽
0x82359831 U+9FFE 鿾
0x82359832 U+9FFF 鿿
0x82358739 U+4DB6 䶶
0x82358830 U+4DB7 䶷
0x82358831 U+4DB8 䶸
0x82358832 U+4DB9 䶹
0x82358833 U+4DBA 䶺
0x82358834 U+4DBB 䶻
0x82358835 U+4DBC 䶼
0x82358836 U+4DBD 䶽
0x82358837 U+4DBE 䶾
0x82358838 U+4DBF 䶿
Д-р Кен Лунде работал в Apple в качестве разработчика шрифтов с 02 августа 2021 г. (и был в той же роли подрядчиком с 16 января 2020 г. по 30 июля 2021 г.), является автором второго издания CJKV «Обработка информации». (O'Reilly Media, 2009 г.) и получил степень бакалавра (1987 г.), магистра (1988 г.) и доктора философии (1994 г.) в области лингвистики в Университете Висконсин-Мэдисон . До работы в Apple он проработал в Adobe более двадцати восьми лет — с 1 июля 1991 г. по 18 октября 2019 г., специализируясь на разработке шрифтов CJKV, что означает, что он проектировал и разрабатывал шрифты для восточноазиатских шрифтов, а также стандарты и спецификации, на которых они основаны. Он спроектировал и разработал «Источник Хан» под брендом Adobe ( Source Han Sans ,Source Han Serif и Source Han Mono ) и семейство шрифтов Pan-CJK с открытым исходным кодом под торговоймаркой Google Noto CJK ( Noto Sans CJK и Noto Serif CJK ), которые были выпущены в 2014, 2017 и 2019 годах и опубликовали более 300 статей на Статический блог Adobe CJK Type . Кен служит регистратором IVD ( База данных идеографических вариаций ) Консорциума Unicode, посещаетсобрания UTC и IRG , участвует в редакционном комитете Unicode , стал индивидуальным пожизненным членом Unicode в 2018 году, получил награду Unicode Bulldog Award 2018., был техническим директором Unicode с 2018 по 2020 год, стал заместителем председателя подкомитета Emoji в 2019 году, опубликовал UTN # 43 ( свойство базы данных Unihan « kStrange » ) в 2020 году, стал председателем CJK & Unihan Group в 2021 году, и опубликовал UTN # 45 ( История собственности Unihan ) в 2022 году. Он и его жена Хитоми являются гордыми владельцами пары His & Hers электромобилей LR Dual Motor AWD Tesla Model 3 2018 года с ускорением .

![В любом случае, что такое связанный список? [Часть 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































