Zalgo Text Generator
使用Unicode组合字符生成恐怖的Zalgo文本。
关于此工具
Zalgo 文本是一种独特的 Unicode 现象,通过在普通文本的字母上下堆叠附加符号来创建有意的故障感和诡异的视觉效果。这种技巧利用 U+0300~U+036F 范围内的 Unicode 结合字符,这些是看不见的标记,它们附着在前一个字符上并以不可预测的方式扩展文本边界。这种美学通过互联网梗和恐怖主题社区获得了流行,因为混乱的外观完美地捕捉了数字腐蚀或超自然扰动的感觉。
使用 Zalgo 文本生成器非常简单:只需在输入框中输入或粘贴您的信息,选择所需的强度级别(低强度为微妙标记,中等强度为经典诡异效果,高强度为极端混乱),选择标记的方向(上、下或两者),然后点击生成。该工具独立处理每个字符,添加随机的结合附加符号组合以每次创建独特的结果。然后您可以复制生成的文本并将其粘贴到任何支持标准 Unicode 的地方——社交媒体帖子、消息应用、游戏聊天室或创意写作项目中。
请记住,虽然 Zalgo 文本在技术上是有效的 Unicode,并且会在大多数现代浏览器和应用中显示,但某些平台出于安全或可读性考虑可能会限制或过滤结合字符,因此效果可能无法完美呈现。Zalgo 文本的乐趣在于其不可预测性,以及看到干净可读的文本变成令人愉快的混乱的冲击。无论您是在装饰恐怖公告、制作内部笑话还是只是尝试 Unicode 的古怪功能,这个工具都能让您完全控制想要释放的视觉混乱程度。
常见问题
代码实现
import random
COMBINING_UP = list(range(0x0300, 0x0316)) + list(range(0x033D, 0x0345)) + list(range(0x034A, 0x034D))
COMBINING_DOWN = list(range(0x0316, 0x0333)) + list(range(0x0339, 0x033D))
COMBINING_MID = list(range(0x0334, 0x0339)) + [0x0333]
def zalgo(text: str, intensity: int = 2, direction: str = 'both') -> str:
counts = {1: (1, 1, 1), 2: (3, 3, 2), 3: (8, 8, 5)}
up_n, down_n, mid_n = counts.get(intensity, (3, 3, 2))
result = []
for char in text:
result.append(char)
if direction in ('up', 'both'):
result.extend(chr(random.choice(COMBINING_UP)) for _ in range(random.randint(1, up_n)))
if direction in ('down', 'both'):
result.extend(chr(random.choice(COMBINING_DOWN)) for _ in range(random.randint(1, down_n)))
result.extend(chr(random.choice(COMBINING_MID)) for _ in range(random.randint(0, mid_n)))
return ''.join(result)
print(zalgo('Hello', intensity=2, direction='both'))
Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.