java - 字母顶部的矢量箭头作为 char 或 String
问题描述
是否有可能将顶部带有矢量箭头的字母添加到字符串(在 Java 中),如下图所示?用特殊的ASCII码还是什么?
解决方案
你想使用'COMBINING RIGHT ABROW ABOVE' (U+20D7)代码点:
System.out.println("a\u20D7");
它应该显示为 a⃗ 但某些字体可能无法正确呈现。
wiki中描述了组合字符的概念:
在数字排版中,组合字符是旨在修改其他字符的字符。拉丁文中最常见的组合字符是组合变音符号(包括组合重音符号)。
Unicode 还包含许多预组合字符,因此在许多情况下,可以根据用户或应用程序的选择同时使用组合变音符号和预组合字符。这导致需要在比较两个 Unicode 字符串之前执行 Unicode 规范化,并仔细设计编码转换器,以正确地将 Unicode 中表示字符的所有有效方式映射到传统编码,以避免数据丢失。
在 Unicode 中,将欧洲语言的变音符号与国际音标组合的主要块是 U+0300–U+036F。组合变音符号也出现在许多其他 Unicode 字符块中。在 Unicode 中,始终在主要字符之后添加变音符号(与一些较旧的组合字符集如 ANSEL 相比),因此可以为同一个字符添加多个变音符号,尽管截至 2010 年,很少有应用程序支持正确呈现此类组合。
推荐阅读
- regex - 如何使用 htaccess 提供 webp 图像?
- dart - Relate 作为 Aqueduct 中的主键,用于“is a”关系
- windows-subsystem-for-linux - 如何从 Windows 10 上的 Ubuntu 命令行访问我的 D:\ 驱动器
- async-await - 调用 FutureExt::boxed() 时缺少 Send 的实现
- ios - 在 NotificationService 中禁用从 didReceive 接收推送
- android - 关闭非 MainActivity 的应用程序无法正常工作
- reactjs - 如何使用 TableCell 为表格列设置图像
- javascript - 由 JS innerhtml 生成时 Viewbag 不起作用
- java - 单击下一个按钮时显示下一个问题
- minizinc - MiniZinc Geocode 未将所有解决方案打印到启用“所有”解决方案的 CSP