I love you three thousand times——从这句话说起

背景

最近几天,有人在朋友圈里面发了这段文字。

I love you three thousand times——从这句话说起

情景模拟

这段话的含义先不提,不过乍一看,字体和平常用的字体有区别。我起初以为是朋友圈的新功能——可以自定义字体,但是我并没有找到这个功能。

我还有论文要写,于是就没有探究下去。直到后来有一天,同样的句子在别的地方出现——还是那熟悉的字体。

我开始觉得这不是特殊的字体,而是一种字符。于是我查了一下,果然如此。

数学字母数字符号

这类字符是Unicode中的数学字母数字符号(Mathematical Alphanumeric Symbols)。对于大小写拉丁字母,衬线体、无衬线体、手写体、等宽体、哥特体、双线体什么的都有,而且对于衬线体、无衬线体、手写体、哥特体,还有粗体;对于衬线体、无衬线体,还有斜体和粗斜体:

I love you three thousand times——从这句话说起

数学字母数字符号的拉丁字母示例

除了拉丁字母,这类字符还有希腊字母和数字,不过支持的字形就少了:

I love you three thousand times——从这句话说起

希腊字母示例

I love you three thousand times——从这句话说起

数字示例

另外说一下,上面的图中,红色背景的字符是在以前的Unicode中就有自己的码位,所以在这个区段不重新编码。

这些字符在Unicode 3.1中被支持,最常用的用途就是和其他字符一起呈现数学公式。如:

I love you three thousand times——从这句话说起

正常显示的情况,注意这三个字符应该是衬线斜体形式的

当然,如果单纯地使用普通的文本编辑器或阅读器,并不能很好地呈现公式,有条件的话还是使用公式编辑器或者是诸如LaTeX这样的语言来书写公式。

就算有也不一定能用

当然,Unicode支不支持是一方面,字体支不支持是另一方面了。就算字体支持了,软件支不支持又是另一方面。

在我的电脑上,我通过BabelMap(使用系统自带的字符映射表看不到这些区域的字符)发现,只有四种字体支持这一区段的字符,甚至连Helvetica、Source Sans Pro、Source Serif Pro、思源黑体这样的字体都不支持这个区段的字符。不过好在有一个可免费商用的字体(Noto Sans Symbols)有这一区段的字符(我的电脑上安装的字体非常多)。但是奇怪的是,如果你使用记事本、VS Code的话,就算使用别的字体,还是能够正常显示这些字符。应该是有一种回滚机制吧。

I love you three thousand times——从这句话说起

只有四种字体支持这一区段的字符

在手机上,我使用基于Android 9的EMUI 9.0.1,使用默认字体(但我不知道有什么字体——应该是有Noto Sans Symbols吧),是能够显示这些字符的。

在我使用过的软件中,TIM的PC版没法显示这样的字符(不过不知道是软件的原因还是字体的原因)。QQ的Android版在聊天窗口中可以正常显示这样的字符,但是显示文本文件时,仍然无法显示这样的字符。不知道是软件原因还是字体原因。

I love you three thousand times——从这句话说起

TIM的PC版发送=²的结果

I love you three thousand times——从这句话说起

Android上HTML查看器与QQ对比

结尾

说起来,实际上Unicode的新字形还挺有意思的。除了大家都知道的emoji外,还有各种各样的字符,甚至有古埃及文字、楔形文字、麻将牌、扑克牌这样的符号。它们中有些字符早已消亡,有些字符默默无闻,更多的字符,则在异国他乡活在了颜文字中。

I love you three thousand times——从这句话说起

古埃及文字

.

附:全部字形

以下就给出了该区段全部的字形,供大家复制(如果可以的话)使用,或者是测试一下能不能正常显示。对于该区段中没有编码的码位,使用其他区段已有字符代替。

ℬℰℱℋℐℒℳℛ

ℯℊℴ

ℭℌℑℜℨ

ℂℍℕℙℚℝℤ

Mathematical Alphanumeric Symbols - Wikipedia


分享到:


相關文章: