全统一码覆盖计划:NotoUni7.1、MonuHani9.5等字体制作后记
做起来才知道号称没豆腐(no tofu)的Noto缺字状况远比想象的更多。

不必重复“统一码收字量远超单个字体包含字形上限”,我用多个字体来覆盖它。
下面是2023年2月18日一揽子发布的 NotoUni 7.1 与 MonuHani 9.5 “结算画面”节选。图上的字形Noto要么没有,要么有问题,我尽可能按Noto风格补画(可见下面Cyrillic Ext-D与Noto原有音标混排的截屏),或者用我以前画的字形、或原创。
除了高亮的那些阿拉伯字实在无能为力,从SIL的阿拉伯字体 Scheherazade New(字体名出典《一千零一夜》,和Noto系列的许可一样)仔细地将曲线二转三,并且阿拉伯敬语连字(Honorific ligatures)用了易读版本。

Noto Unicode 7.1
下面截屏是NotoUni7.0版笔记,如果文字部分都贴出来本文就没法看了(放到gh去)

我的补字原则是“宛如原生”,三次曲线,这些曲线也必须干净不能有毛糙的锚点,该光滑的地方不能有折角。以 阿含|Ahom 的U+11743为例,Noto没有,但这个字符看起来像U+11705一半和U+11713贴起来,于是我补字如图,不仅锚点一一对应,左右字距空白也是,如果将来Noto更新的曲线跟我一致那也不奇怪。


下面5个占星术符号中只有一个是Noto,其它都是我画的,猜猜看是哪个。答案上面有。

还有个问题,某些统一码字符字形完全相同,只有颜色的区别,针对NotoUni这个黑白字体,我想来想去决定直接把颜色写在字形脸上:

主要是CMYK、RGB这种颜色缩写。褐色因为与蓝色重复只好用“Br”,另外灰色与绿色重复,粉色与紫色重复,这些都是二字缩写。考虑要不出个中文标记的版本。
同样肤色指示符和三分性别也照此办理。


标记用的小字字体CtrlOrdn在下文说明。顺带,这可能是第一个otf版且没有bug的单色NotoEmoji(黑白svg那个NotoEmoji不算,otf文件居然没解决重叠问题,而且字形也难看,不然我不至于修复二转三)
发布在:github.com/MY1L/Unicode/releases/tag/NotoUni7
我还在考虑究竟要不要做成彩色字体。想了想,这种需求可以用“尺规彩绘 | Ctrl Zsye”解决,我今天也稍微更新了。

Monu Hani 9.5
补充了Noto或思源都没有的假名。内容太长了,详见补字笔记:github.com/MY1L/Unicode/blob/main/Hani/note.md
其中值得一提的是我原创了一套Kana Extended-B:𚿰𚿱𚿲𚿳𚿵𚿶𚿷𚿸𚿹𚿺𚿻𚿽𚿾

发布在:github.com/MY1L/Unicode/releases/tag/Hani9

统一码从ASCII继承了不少控制字(Control Character)这些字符如LF换行、CR回车,你每天都会与其打交道,按其性质应该做成不可见的,Noto当然不用做,但总有需要看见的特殊情况,比如许多编辑器会突出换行符方便检查。
为此做了原创字体“尺规图符 | Ctrl Ctrl”,恰好之前做了原创字宽字重可变字体 Ctrl Ordn,因此我的优势是可以随意调整虚线框内每个字符宽度。但由于当时没做小写,于是补课了一遍(这部分字形非可变字体,因为来不及了)

题图是旧版 v1,我刚才已升级到v1.1:github.com/MY1L/Ctrl/releases/tag/Ctr1
制作辛苦程度可见如下v1版的截屏。很长:

字形包含部分常用的反斜杠转义,和过去拿控制符码位当装饰符号的替代情况:
\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这字体不是等宽的,批量生成的无视字距会很难看,尤其74之间仿佛夹了个空格,因此这上百个也是手动调的,好辛苦呀!
今天v1.1更新如下图(部分)

最后,可以随时看看我这个字体对统一码覆盖表格有没有更新:github.com/MY1L/Unicode/tree/main/FontList