全統(tǒng)一碼覆蓋計(jì)劃:NotoUni7.1、MonuHani9.5等字體制作后記
做起來才知道號(hào)稱沒豆腐(no tofu)的Noto缺字狀況遠(yuǎn)比想象的更多。

不必重復(fù)“統(tǒng)一碼收字量遠(yuǎn)超單個(gè)字體包含字形上限”,我用多個(gè)字體來覆蓋它。
下面是2023年2月18日一攬子發(fā)布的 NotoUni 7.1 與 MonuHani 9.5 “結(jié)算畫面”節(jié)選。圖上的字形Noto要么沒有,要么有問題,我盡可能按Noto風(fēng)格補(bǔ)畫(可見下面Cyrillic Ext-D與Noto原有音標(biāo)混排的截屏),或者用我以前畫的字形、或原創(chuàng)。
除了高亮的那些阿拉伯字實(shí)在無能為力,從SIL的阿拉伯字體 Scheherazade New(字體名出典《一千零一夜》,和Noto系列的許可一樣)仔細(xì)地將曲線二轉(zhuǎn)三,并且阿拉伯敬語連字(Honorific ligatures)用了易讀版本。

Noto Unicode?7.1
下面截屏是NotoUni7.0版筆記,如果文字部分都貼出來本文就沒法看了(放到gh去)

我的補(bǔ)字原則是“宛如原生”,三次曲線,這些曲線也必須干凈不能有毛糙的錨點(diǎn),該光滑的地方不能有折角。以 阿含|Ahom 的U+11743為例,Noto沒有,但這個(gè)字符看起來像U+11705一半和U+11713貼起來,于是我補(bǔ)字如圖,不僅錨點(diǎn)一一對(duì)應(yīng),左右字距空白也是,如果將來Noto更新的曲線跟我一致那也不奇怪。


下面5個(gè)占星術(shù)符號(hào)中只有一個(gè)是Noto,其它都是我畫的,猜猜看是哪個(gè)。答案上面有。

還有個(gè)問題,某些統(tǒng)一碼字符字形完全相同,只有顏色的區(qū)別,針對(duì)NotoUni這個(gè)黑白字體,我想來想去決定直接把顏色寫在字形臉上:

主要是CMYK、RGB這種顏色縮寫。褐色因?yàn)榕c藍(lán)色重復(fù)只好用“Br”,另外灰色與綠色重復(fù),粉色與紫色重復(fù),這些都是二字縮寫??紤]要不出個(gè)中文標(biāo)記的版本。
同樣膚色指示符和三分性別也照此辦理。


標(biāo)記用的小字字體CtrlOrdn在下文說明。順帶,這可能是第一個(gè)otf版且沒有bug的單色NotoEmoji(黑白svg那個(gè)NotoEmoji不算,otf文件居然沒解決重疊問題,而且字形也難看,不然我不至于修復(fù)二轉(zhuǎn)三)
發(fā)布在:github.com/MY1L/Unicode/releases/tag/NotoUni7
我還在考慮究竟要不要做成彩色字體。想了想,這種需求可以用“尺規(guī)彩繪?|?Ctrl Zsye”解決,我今天也稍微更新了。

Monu Hani?9.5
補(bǔ)充了Noto或思源都沒有的假名。內(nèi)容太長了,詳見補(bǔ)字筆記:github.com/MY1L/Unicode/blob/main/Hani/note.md
其中值得一提的是我原創(chuàng)了一套Kana Extended-B:??????????????????????????

發(fā)布在:github.com/MY1L/Unicode/releases/tag/Hani9

統(tǒng)一碼從ASCII繼承了不少控制字(Control Character)這些字符如LF換行、CR回車,你每天都會(huì)與其打交道,按其性質(zhì)應(yīng)該做成不可見的,Noto當(dāng)然不用做,但總有需要看見的特殊情況,比如許多編輯器會(huì)突出換行符方便檢查。
為此做了原創(chuàng)字體“尺規(guī)圖符 |?Ctrl Ctrl”,恰好之前做了原創(chuàng)字寬字重可變字體?Ctrl Ordn,因此我的優(yōu)勢是可以隨意調(diào)整虛線框內(nèi)每個(gè)字符寬度。但由于當(dāng)時(shí)沒做小寫,于是補(bǔ)課了一遍(這部分字形非可變字體,因?yàn)閬聿患傲耍?/p>
題圖是舊版?v1,我剛才已升級(jí)到v1.1:github.com/MY1L/Ctrl/releases/tag/Ctr1
制作辛苦程度可見如下v1版的截屏。很長:

字形包含部分常用的反斜杠轉(zhuǎn)義,和過去拿控制符碼位當(dāng)裝飾符號(hào)的替代情況:
\a 響鈴符 (BEL, ASCII 7)
\b 退格符 (BS,? ASCII 8)
\t 水平制表符 (HT, ASCII 9)
\n 換行符 (LF, ASCII 10)
\f 跳頁符 (FF, ASCII 12)
\r 回車符 (CR, ASCII 13)
\v 垂直制表符 (VT, ASCII 11)
你以為后面那些“vs”可以批量生成罷?不能,Ordn這字體不是等寬的,批量生成的無視字距會(huì)很難看,尤其74之間仿佛夾了個(gè)空格,因此這上百個(gè)也是手動(dòng)調(diào)的,好辛苦呀!
今天v1.1更新如下圖(部分)

最后,可以隨時(shí)看看我這個(gè)字體對(duì)統(tǒng)一碼覆蓋表格有沒有更新:github.com/MY1L/Unicode/tree/main/FontList