我正在研究代码页,并发现在不同的维基百科条目中,术语使用存在许多冲突。我无法找到一份全面解释字符处理过程的信息来源。请精通该领域的人指出以下信息的错误或不准确之处:
字符表示过程如下:
- 我们从一组符号(可能是“脚本”)开始,这些符号与任何特定平台都没有关联。例如,“西里尔字母表”在Windows和Linux环境下都是相同的实体。 - 厂商从这些集合中选择成员,通常是一批一批地选择,以形成一个特定于平台的字符集。平台可以为这些字符分配各种代码,例如在Windows上的GDI值(例如ANSI_CHARSET的0和其他代码在此处提到:http://asa.diac24.net/wiki/index.php?title=ASS:fe&printable=yes)。我找不到有关这些集合的太多信息,例如它们是否实际上是编码字符集,还是仅仅是无序和抽象的。 - 从这些集合中,开发出个别代码页,似乎与GDI值具有一对一映射关系。由于这些GDI值似乎代表平台相关的集合,这是否意味着Windows代码页本质上是每个单独集合的编码版本?
我一直在努力将这个想法与早些时候向我展示的链接(我已经丢失了)相协调,该链接显示不同平台上这些GDI字符集和代码页之间存在一对多映射关系。这是准确的吗?这些GDI值是否指向可以开发出不同平台上的不同代码页的集合?
- 每个代码页将抽象字符集的成员映射到一个整数,以表示其在集合中的位置。在上述网页中提到的“简单”代码页的情况下,可以使用更精确的“字符映射”术语来引用它们。这个术语是否值得考虑,还是区别太微妙而无关紧要? - 字体通过将代码点解析为字形来解析代码点,如果字体包含该代码点,则返回成功,否则报告失败。我还读到过,字体可能会针对其不支持的那些代码点返回自己的空白字形。应用程序能否区分这个空白字形和成功解析,即字体是否返回某种错误代码与此空白字形?
以上就是我的困惑所在。任何有关此方面的澄清都将是非常宝贵的。提前感谢您。
字符表示过程如下:
- 我们从一组符号(可能是“脚本”)开始,这些符号与任何特定平台都没有关联。例如,“西里尔字母表”在Windows和Linux环境下都是相同的实体。 - 厂商从这些集合中选择成员,通常是一批一批地选择,以形成一个特定于平台的字符集。平台可以为这些字符分配各种代码,例如在Windows上的GDI值(例如ANSI_CHARSET的0和其他代码在此处提到:http://asa.diac24.net/wiki/index.php?title=ASS:fe&printable=yes)。我找不到有关这些集合的太多信息,例如它们是否实际上是编码字符集,还是仅仅是无序和抽象的。 - 从这些集合中,开发出个别代码页,似乎与GDI值具有一对一映射关系。由于这些GDI值似乎代表平台相关的集合,这是否意味着Windows代码页本质上是每个单独集合的编码版本?
我一直在努力将这个想法与早些时候向我展示的链接(我已经丢失了)相协调,该链接显示不同平台上这些GDI字符集和代码页之间存在一对多映射关系。这是准确的吗?这些GDI值是否指向可以开发出不同平台上的不同代码页的集合?
- 每个代码页将抽象字符集的成员映射到一个整数,以表示其在集合中的位置。在上述网页中提到的“简单”代码页的情况下,可以使用更精确的“字符映射”术语来引用它们。这个术语是否值得考虑,还是区别太微妙而无关紧要? - 字体通过将代码点解析为字形来解析代码点,如果字体包含该代码点,则返回成功,否则报告失败。我还读到过,字体可能会针对其不支持的那些代码点返回自己的空白字形。应用程序能否区分这个空白字形和成功解析,即字体是否返回某种错误代码与此空白字形?
以上就是我的困惑所在。任何有关此方面的澄清都将是非常宝贵的。提前感谢您。