如何测试 Unicode 大于 0x10000 的字符?复制到编辑器 就不支持了。

2020-06-11 14:46:22 +08:00
 amiwrong123

https://www.unicode.org/charts/PDF/U10000.pdf 这个网址提供了一些 Unicode 大于 0x10000 的字符(都是些什么象形文字)。

现在说需要测试 Unicode 大于 0x10000 的字符是否可以支持,是 C++的环境中,以前就是直接将字符串的 UTF16 大端的字节流 往下发,也都没问题。主要正常情况下,都是些 Unicode 小于 0x10000 的字符。

但现在想从上面的网址上复制一个 字符下来,发现复制到编辑器里后,就啥也不是了(难道是因为 CPP 文件本身的原因)。难道我只能 手动按照 码点和 UTF16BE 编码的对应关系 手动在代码中写死成 这几个字节吗?

1559 次点击
所在节点    程序员
10 条回复
no1xsyzy
2020-06-11 15:47:57 +08:00
编辑器不支持……
tojonozomilk
2020-06-11 18:10:03 +08:00
这是日语古文字嘛? aiueo 五元音,辅音有 R 无 L
sarvatathagata
2020-06-11 18:14:32 +08:00
@tojonozomilk 里面写了啊,这是线形文字 B
woodensail
2020-06-11 18:14:57 +08:00
换个支持的编辑器不行吗?
或者你这是提供一个接口的话,直接调用接口的时候把数据传过去呗。
woodensail
2020-06-11 18:17:33 +08:00
顺便一提,我怀疑应该不会存在这么弱鸡的编辑器。更大的可能是编辑器没问题,只是你的字体里没有这个字符而已,属于展示异常。
woodensail
2020-06-11 18:21:00 +08:00
然后,你可以考虑去 cjk 扩展 A 里面找一些文字来测试,那些都是 0x20000 往后的。而且你电脑上通常至少有一种能展示这些文字的字体。
woodensail
2020-06-11 18:21:24 +08:00
@woodensail 更正,应该是扩展 B,或者更后面
Cooky
2020-06-11 18:32:51 +08:00
换个全点的字体?
amiwrong123
2020-06-11 22:32:44 +08:00
@woodensail
谢谢,0x20000 以后的,我看都是些奇怪的中文字符。明天再试试。或者再试试 emoj 表情。

你提醒了我,确实可能是字体不支持,我看看更换字体好使不
alan0liang
2020-06-12 08:29:23 +08:00
Linear B……应该很多 monospace 字体不会做这个吧……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/680685

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX