我正在编写一台旧计算机控制台打字机的模拟,它有一个不寻常的功能:“标记数字”。标记数字是上面带有水平条的数字,您可以通过按 FLG 键来键入该数字,该键会键入水平条但不会推进回车,然后按数字键。
当输出标记数字时,打字机使用相同的两笔画过程。
由于“标志”就像一个变音符号(例如 ñ 中的波形符),我想象我可以这样对待它,将它绑定(bind)到它自己的唯一键而不是选项-n(就像你在 Mac 上执行)。
我希望能够通过扫描旧的打印输出(带交叉影线等等!)来构建字体。但我不知道定义变音标记涉及什么,也不知道是否可以在不“前进”的情况下输出文本字符。
字体(如果这是一个词)非常复杂,所以我希望精通该主题的人能够向我指出相关主题。
最佳答案
Java 使用 Unicode。一些带变音符号的字符有 their own character 。但还有overstrike diacritics的选项,其宽度实际上为零。 示例 here和 here 。
要在输出中表示这些内容,您需要使用正确的字体。
至于在源代码中表示它们,虽然 Java 原则上可以在源代码中包含任何 Unicode 字符,但在通常的实践中并没有这样做。相反,使用 Unicode 转义(例如 \ucc81
),或者从外部源读取非 ASCII 字符。
如果您想要创建一种字体,那与 Java 无关。为此,您需要合适的工具,例如 FontCreator 或 FontLab。然后,必须将这些字体安装在 Java 将从中引用它们的操作系统中。尽管用 Java 加载它们也是可能的。
关于java - 变音符号如何以字体表示并在 Java 应用程序中键入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7069314/