個人對GB18030-2022和Adobe-GB1-6在字體制作上的理解
今天我才發(fā)現(xiàn)GB18030已經(jīng)于8月1日開始實行2022版新國標了,而且是由之前的推薦性標準改為了強制標準,這讓我想起我之前做過的字體Acy-Font已經(jīng)不符合標準了。
根據(jù)我對GB18030新標準中三個實現(xiàn)級別的理解,從今往后所有要支持簡體中文顯示的字體都需要符合第一級別(大約28574個字符),即使是藝術(shù)字體也是如此,像我之前那樣抱著自己隨便做著玩的心態(tài)支持一下GB2312字符集糊弄一下得了肯定是不行了,否則均會被視為不標準、不符合規(guī)范的字體,這也大大提高了個人字體作者的制作難度。
我之前為了省事不做上萬那么多的字符查了些資料,發(fā)現(xiàn)了Adobe-GB1的規(guī)范,這個規(guī)范分了較多的級別,也方便了字體制作者根據(jù)能力去實現(xiàn)相應(yīng)不同的級別,比如我只想做GB2312字符集,那我只需實現(xiàn)Adobe-GB1-0就行了,這樣只用做7717個字符。而如今若要符合GB18030標準需要至少支持到Adobe-GB1-4(覆蓋CJK擴展A區(qū)),要符合第二級別則需要支持全部Supplement,但這里面比較令人疑惑的是Supplement5又包含了三個級別之外的彝語文字(非漢字文種屬于選擇性支持),這不得不令我懷疑Adobe的這個Supplement5~6的CID表設(shè)計得是否合理,以后如果再做字體還是不要用Adobe的CID表了吧。
GB18030的三個實現(xiàn)級別
實現(xiàn)級別1(任何硬件或軟件必須支持的級別)
需要支持到CJK擴展A區(qū),總計28574個字符(含96個單字節(jié)字符,21882個雙字節(jié)字符,6596個四字節(jié)字符)
實現(xiàn)級別2
在級別1的基礎(chǔ)上還要支持《通用規(guī)范漢字表》中的字符
實現(xiàn)級別3
在級別2的基礎(chǔ)上還要支持全部漢字及康熙部首(注意非漢字文種在級別1中規(guī)定了是選擇性支持),總計89105個字符(康熙部首+擴展B~F區(qū)共60531個字符)
Adobe-GB1
Adobe-GB1-4
實現(xiàn)GB18030第1級別的最低選擇,共29064個字符
Adobe-GB1-6
實現(xiàn)GB18030第2級別的最低選擇,共30572個字符,其中包含規(guī)定外的彝語字符,因此不建議使用
相關(guān)鏈接:
Acy-Font:https://github.com/lxfly2000/Acy-Font
GB18030:https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=A1931A578FE14957104988029B0833D3
Adobe-GB1:https://github.com/adobe-type-tools/Adobe-GB1