java - 变音符号如何以字体表示并在 Java 应用程序中键入?

标签 java fonts diacritics

我正在编写一台旧计算机控制台打字机的模拟,它有一个不寻常的功能:“标记数字”。标记数字是上面带有水平条的数字,您可以通过按 FLG 键来键入该数字,该键会键入水平条但不会推进回车,然后按数字键。

当输出标记数字时,打字机使用相同的两笔画过程。

由于“标志”就像一个变音符号(例如 ñ 中的波形符),我想象我可以这样对待它,将它绑定(bind)到它自己的唯一键而不是选项-n(就像你在 Mac 上执行)。

我希望能够通过扫描旧的打印输出(带交叉影线等等!)来构建字体。但我不知道定义变音标记涉及什么,也不知道是否可以在不“前进”的情况下输出文本字符。

字体(如果这是一个词)非常复杂,所以我希望精通该主题的人能够向我指出相关主题。

最佳答案

Java 使用 Unicode。一些带变音符号的字符有 their own character 。但还有overstrike diacritics的选项,其宽度实际上为零。 示例 herehere

要在输出中表示这些内容,您需要使用正确的字体。

至于在源代码中表示它们,虽然 Java 原则上可以在源代码中包含任何 Unicode 字符,但在通常的实践中并没有这样做。相反,使用 Unicode 转义(例如 \ucc81),或者从外部源读取非 ASCII 字符。

如果您想要创建一种字体,那与 Java 无关。为此,您需要合适的工具,例如 FontCreator 或 FontLab。然后,必须将这些字体安装在 Java 将从中引用它们的操作系统中。尽管用 Java 加载它们也是可能的。

关于java - 变音符号如何以字体表示并在 Java 应用程序中键入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7069314/

相关文章:

python - 编码斯洛伐克语字母,如 : á š Č é

java - GAE JSF 表单标签错误?

javascript - 如何通过使用 javascript 检查 mysql 数据库中是否存在该值来从选择下拉框中删除选项

java - 将java程序转换成linux命令

ios - 如何在 iOS 应用程序中将自定义字体系列设置为系统字体

html - 不同的字体添加到网站

c# - 删除变音符号,某些字母上的某些变音符号除外

java - 在Java中,如何访问新监听器 block 内的静态方法参数?

html - 在网络上使用 Adob​​e 字体

windows - 键盘 Hook 中的 ToAscii/ToUnicode 会破坏死键