0

在旁边

我不确定这是 Java 还是字体问题,但是,我使用的是 java.awt.Font 类。

语境

我正在使用 java.awt.Font 类将字形绘制到屏幕上。有一些函数可以让我给它传递一个要绘制的字符。有些函数允许我将代码点传递给它以进行绘制。

问题

对于 az、AZ、0-9 的字符,(char ch) 和 (int codepoint) 之间的关系是什么?一些标准是否保证对于这些字母数字字符,代码点值只是 char 的 ascii 值?

谢谢!

4

2 回答 2

2

Codepoint 是等同于旧的“ASCII 值”的新术语。由于现代编码远远超出了 ASCII 的 7 位,因此必须创造另一个词。但是大多数编码具有与 ASCII 相同的前 127 个字符/代码点 - 所以你在这里是安全的,除非你正在处理异国情调的 IBM 编码;-)

于 2012-05-20T03:17:34.877 回答
1

Achar是 16 位 Unicode 字符。可以表示到 之间的任何charUnicode 字符,并且所有这些字符都在该范围内。有一些方法采用代码点和其他方法采用代码点的原因是因为 Unicode 实际上为 1,114,112 个字符分配空间,并且作为 16 位原语,只能表示其中的前 65,536 个。\u0000\uffffcharchar

于 2012-05-20T03:18:26.837 回答