我在不同的论坛上看到过类似下面这样的名为Zalgo的奇怪格式的文本。这看起来有点烦人,但它确实让我感到困扰,因为它破坏了我对角色应该是什么的概念。我的理解是,一个角色应该在一条线上水平移动,并停留在某个“容器”内。很明显,Zalgo文本是垂直移动的,似乎不受任何空间的限制
这是Unicode中的错误/缺陷/漏洞/黑客攻击吗?这些角色是否具有奇怪的属性?这里发生了什么
在7 7 7 7 7月月月日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日的的的的的的本月8日日,本月月8日日,本月月日日,本月月月月日日日日,本月月月月日日日日日日,本月月月月月日日日日日日日日日日,本月月月月日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日,本本本本本本本本本本本本月月月月月月月日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日,,在8月8日的道路上,8月8日的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的道路上的各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各̖͇͍͇͓̓8月8日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日本月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日日,,,,月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月月k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k、k
文本使用组合字符,也称为组合标记。请参阅Unicode标准中组合字符的第2.11节(PDF)
在Unicode中,字符渲染不使用简单的字符单元模型,在该模型中,每个glyph都放入具有给定高度的框中。组合标记可以呈现在基本字符的上方、下方或内部
因此,假设渲染软件符合Unicode渲染模型,您可以轻松构建一个字符序列,该序列由任意长度的基本字符和“组合上述”标记组成,以达到任意所需的视觉高度。当然,这样的序列没有任何意义,即使是猴子也可以产生它(例如,给定一个带有合适驱动程序的键盘)
你可以混合使用“组合在上面”和“组合在下面”的标记
问题中的示例文本以以下内容开头:
- 拉丁文大写字母H-
&#x48 - 结合拉丁文小写字母T-
&#x36d - 结合希腊科罗尼斯语-
&#x343 - 在上面组合逗号-
&#x313 - 结合上面的点-
&#x307