Wingdings转换

把文本按 Wingdings 的编码向量逐字符换成 Unicode 符号:H 变成白色下指标、J 变成笑脸、N 变成骷髅与交叉骨,95 个可打印 ASCII 里有对应的就替换,其余原样透传。默认输入 Hello 中,结果是 ☟♏●●□ 中,共 7 个字符、转换 6 个、原样保留 1 个。也可以切到「符号 → 文本」反向解码。

Hello 中 → ☟♏●●□ 中;Wingdings 是符号字体,只有 95 个可打印 ASCII 有 Unicode 对应,其余原样透传。
☟♏●●□ 中 总字符 7,已转换 6,原样保留 1 -- 逐字符 -- H → ☟ e → ♏ l → ● l → ● o → □ 空格 → 空格 中 → 原样保留

默认示例:模式 enc、输入 Hello 中。输入框被清空时点「转换」会自动填回示例;解码模式按码位迭代,●● 之间没有分隔符也能正确切开。

使用方法

  1. 「模式」默认「文本 → 符号」,粘贴英文即按 Wingdings 编码向量逐个字符替换;切成「符号 → 文本」则反向查表,用来解码别人发来的符号串。
  2. 输入框默认已经填好 Hello 中,按 Ctrl+Enter(Mac 上 Cmd+Enter)立即转换;单独的 Enter 留给换行,方便处理多行文本。
  3. 结果区第一行是转换后的文本,第二行是统计:总字符、已转换、原样保留;解码模式下第三项叫「无法识别」,同样按个计数。
  4. 统计下面是逐字符明细,每字符一行写明原字符与去向;不在 95 项之内的字符显示「原样保留」,无法识别的符号显示「无法识别」并从输出中跳过。
  5. 工具区下方是 95 行完整映射表,按 ASCII 0x20 到 0x7E 顺序排列,默认显示前 12 行,点「加载更多」展开余下 83 行,点「导出 CSV」存成带字节序标记的文件。
  6. 「复制结果」只复制转换后的文本;「复制名场面表」复制正文名场面表的 TSV,可直接粘进表格软件。
  7. 编码按码位迭代,emoji 这类 UTF-16 代理对原样透传并计入「原样保留」,不会被拆成两个字符;解码同样按码位迭代,●● 之间没有分隔符也能正确切开。
  8. 输入框被清空时点「转换」会自动填回示例;本页只做字符替换,不安装也不调用 Wingdings 字体文件,转换结果是可以复制粘贴的真实 Unicode 文本。

这个Wingdings转换能解决什么问题

Wingdings 是微软 1990 年推出、随 Windows 3.1 捆绑的符号字体(Pi font),键入的字符会画成完全不同的图形:J 画成笑脸、N 画成骷髅、A 画成胜利手势。本页做的不是套字体,而是把每个字符换成它有 Unicode 对应的符号,结果是可以复制粘贴的真实文本,对方没装字体也看得见。

第一类是解码别人发来的符号串。聊天里收到一串 ☟♏●●□,在本页切到「符号 → 文本」粘进去,立刻得到 Hello;逐字符明细会指出哪个符号不在表内、被计为「无法识别」。

第二类是做暗号与整蛊。把一句话编码后发出去,对方没有对照表解不开;J(笑脸)与 L(皱眉脸)是最常被用来做暗号的两个字符。本页给出完整 95 行对照表,编解码都可以当场核对,不必去翻字体映射手册。

第三类是排版与教学。讲字体替换原理时,可以用本页展示「底层字符码没变、只是字形被替换」这件事:为什么不能反过来用 Unicode 符号打出 Wingdings 文本,答案就在原理一节。

计算原理与变量说明

核心是一张 95 项的表 WD,键是 0x20 到 0x7E 的可打印 ASCII,值是对应的 Unicode 符号,逐字取自微软 Windows Wingdings 编码向量。编码就是查表替换,解码是反向表 REV 查表;95 项两两不重复,所以反向查表没有歧义,一个符号只会解回一个字符。

字符符号Unicode 码位中文说明
J☺U+263A白色笑脸,最常用来做暗号
L☹U+2639白色皱眉脸,与 J 成对使用
H☟U+261F白色向下指索引,默认示例第一个
A✌U+270C胜利手势
l●U+25CF黑色圆形,编码后最常见的符号
n■U+25A0黑色方形

Wingdings 是 Pi font,字形大多没有 Unicode 对应。字体文件在 0x00 到 0xFF 有两百多个字形,其中只有 95 个可打印 ASCII 位置上的图形在 Unicode 里找得到对应符号,其余(箭头、对勾、圈号、时钟面)没有独立编码。本工具只转换这 95 个,对应不上的原样透传并单独计数,不假装全表可转;0x7F 位置在字体里是无字形占位,同样不在 95 项之内。

解码必须按码位迭代,不能按空白切分。编码结果里 ●● 是两个连续的 U+25CF,中间没有分隔符,用空格切分会把它们粘成一个 token;按码位迭代还要处理代理对,U+1F589 这类补充平面符号在 UTF-16 里占两个码元,本页的 dec() 先把高代理与低代理合成一个码位再查表,然后才查 REV。

名场面与都市传说。N(☠ 骷髅与交叉骨)+ Y(✡ 大卫星)+ C(👍 竖大拇指)三连在 1992 年 Windows 3.1 发布后不久被发现,曾被误读成针对纽约的恶意隐喻;微软与字体设计方 Bigelow & Holmes 均否认有意为之,称字形排布基本随机。1997 年微软在 Webdings 里把 NYC 对应成眼睛、爱心与城市天际线,读作 I Love New York,正是对这场误读的回应。九一一之后还流传过 Q33NY 的变体:按本页映射,Q33NY 转出的是 ✈📏📏☠✡,两个 3 都是直尺。为什么不能反过来用 Unicode 符号「打」出 Wingdings 文本:字体是字形替换,底层字符码没变,复制粘贴出来的是原字符不是符号,这正是本工具存在的理由。

编码与解码都不做大小写归一:W 与 w 在表里是两个不同的符号(凯尔特十字与方框内上箭头),输错大小写会得到另一个字形。空格是唯一映射到自身的字符,所以它计入「已转换」而不计入「原样保留」。

完整示例(数值仅作演示)

默认一组:模式 enc、输入 Hello 中。主结果是 ☟♏●●□ 中,统计为总字符 7、已转换 6、原样保留 1;逐字符明细依次为 H → ☟、e → ♏、l → ●、l → ●、o → □、空格 → 空格、中 → 原样保留。每一行都能在下方 95 行映射表里找到。

反向一组:模式切到 dec、输入 ☟♏●●□ 中,得到 Hello ,统计为总字符 7、已转换 6、无法识别 1,中 显示「无法识别」。把上一组的主结果原样粘回来即可验证编解码互为逆运算。

边界一组:输入 JKL 得 ☺😐☹,三个字符全部转换;输入 NYC 得 ☠✡👍,三个字符也全部转换;输入纯中文「你好」得 你好,已转换 0、原样保留 2;输入 z 得命令符号 ⌘。三组都由页面自己的查表逻辑复算。

Wingdings名场面与未覆盖区间对照表

第一张表列出最常被问到的字符与两桩都市传说,都能在 95 行映射表里核对;「复制名场面表」复制的就是这张表。

字符符号Unicode 码位中文说明
J☺U+263A白色笑脸,最常用的暗号字符
L☹U+2639白色皱眉脸,与 J 成对
N☠U+2620骷髅与交叉骨,NYC 三连之首
Y✡U+2721大卫星,NYC 三连之二
C👍U+1F44D竖大拇指,NYC 三连之三
Q✈U+2708飞机,Q33NY 传说的开头
3📏U+1F4CF直尺,Q33NY 里被当成大楼
A✌U+270C胜利手势
T❄U+2744雪花
U🕆U+1F546白色拉丁十字
z⌘U+2318命令符号,Mac 用户最眼熟的一个
{🏵U+1F3F5玫瑰花结,表尾少见的花卉符号
空格(空格)U+0020唯一映射到自身的字符

第二张表是 0x80 以上的未覆盖区间。这些位置在字体里同样是图形(箭头、对勾、圈号、时钟面等),本页明确不做:一是数量有一百二十多个,二是其中相当一部分在 Unicode 里没有一对一的标准对应,硬凑会引入错误映射。列出来只为把边界说清楚。

位置符号Unicode 码位类别
0x80–0x95⓪ ① ②U+1F10B、U+2780、U+2781圈号数字(负圈号在 0x8B 起)
0x9E–0x9F∙ •U+2219、U+2022项目符号
0xA1⭘U+2B58粗线圆形
0xA7▪U+25AA黑色小方形
0xAB★U+2605黑色五角星
0xB7–0xB9🕐 🕑 🕒U+1F550–U+1F552时钟面,从一点到三点
0xC0🖥U+1F5A5台式计算机
0xCF🔒U+1F512锁
0xD9☁U+2601云
0xDF🌫U+1F32B雾
0xF2🐿U+1F43F花栗鼠
0xFE–0xFF🌎 🕊U+1F30E、U+1F54A地球与和平鸽

结果边界、舍入与适用说明

常见问题

为什么转换结果发到微信里变了样?

因为输出是真正的 Unicode 符号(如 U+261F),不是 Wingdings 字体渲染效果。设备上有对应字体会显示符号,旧设备可能显示成方框,但字符本身正确,仍可被本页反向解码。

为什么只有 95 个字符能转?

因为 0x20 到 0x7E 这 95 个可打印 ASCII 位置上的图形在 Unicode 里找得到对应符号,其余位置(0x80 以上的一百二十多个图形)大多没有一对一的标准编码。本页只做有把握的 95 个,对应不上的原样透传。

0x7F 为什么不在表里?

0x7F 在 Wingdings 里是无字形占位,键入它什么也不画,所以不在 95 项之内;0x20 空格是唯一映射到自身的字符,反而在表里。

NYC 真的是对纽约的死亡隐喻吗?

不是。1992 年 Windows 3.1 发布后不久有人发现 NYC 转出骷髅、大卫星与竖大拇指,微软与字体设计方 Bigelow & Holmes 均否认有意为之,称字形排布基本随机。1997 年的 Webdings 把 NYC 对应成眼睛、爱心与城市天际线,读作 I Love New York,是对这场误读的回应。

●● 之间没有分隔符,解码为什么不会糊在一起?

因为解码按码位迭代,不按空白切分。每个 U+25CF 单独查反向表得到 l,连续两个就得到 ll;代理对会先合成一个码位再查,所以补充平面符号也不会被拆开。

W 和 w 转出来的为什么不一样?

W(0x57)是凯尔特十字 U+1F548,w(0x77)是方框内上箭头 U+2BB9,两者在表里是不同的条目。页面不做大小写归一,输错大小写得到的就是另一个字形。

能把整篇文章一次性编码吗?

可以,但只有字母、数字与标点会变成符号,中文、emoji 原样透传。逐字符明细按输入长度逐行列出,输入过长时建议分段转换。

输入的数据会上传到服务器吗?

不会。查表、统计与导出都在本页完成,没有发起任何网络请求,刷新页面后输入即恢复默认值。

相关工具