gpt4 book ai didi

unicode - 组合任意 Unicode 符号或具有负宽度的 Unicode 字符

转载 作者:行者123 更新时间:2023-12-02 21:33:06 29 4
gpt4 key购买 nike

早在 ZX Spectrum 的早期,就有一种方法可以将一个字形打印在另一个字形之上,从而在 OVER 1 指令的帮助下创建复合字形。

我想知道是否有 Unicode 方法可以在现代计算机上执行相同的操作?我可以将两个完全任意的可打印字形(例如 7~)叠加在一起,就像对它们进行“或”或“异或”运算以产生此结果一样吗?

DIGIT SEVEN (U+0037) TILDE (U+007E) OR'ed combination of DIGIT SEVEN and TILDE XOR'ed combination of DIGIT SEVEN and TILDE

或者,是否有任何“负宽度”Unicode 符号?

最佳答案

没有办法对 Unicode 中两个任意字符的叠加进行编码。

在一些甚至早于 8 位计算机的编码中,您可以通过传输退格键来覆盖任意字符,因此 è 将是 e backspace `。这在早期的计算机屏幕上不起作用,但在机械行打印机上起作用!

Unicode 中有组合字符,包括 7̴ 和 7̃。只是不是那个特定的。

最接近支持将任意字符组合成单个字素的是零宽度连接器(zwidge; U+200D),例如用于制作 👩(女人)+ ZWJ + ⚕ (caduceus) = 👩‍⚕️(女性卫生 worker )。在表情符号和许多文字(例如梵文和阿拉伯语)中,这意味着除了叠加符号之外的其他含义。

OpenType 字体支持连字,因此给定字体可能将 7~ 或 7 ZWJ ~ 定义为该符号。 Palatino Linotype 就是支持这种方式的 interrobang (‽) 的一种。

不过,一般来说,您需要通过其他方式将此信息传达给您的应用程序,例如嵌入自定义字体或将字形作为内联矢量图形传输。

关于unicode - 组合任意 Unicode 符号或具有负宽度的 Unicode 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52938779/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com