美文网首页
Unicode 常见术语

Unicode 常见术语

作者: import_hello | 来源:发表于2018-09-06 06:54 被阅读0次

    转载须注明出处:简书@Orca_J35

    以下内容直接翻译自 Unicode 术语表:Glossary of Unicode Terms

    Unicode 是一种用数值表示字符的标准,适用于世界上所有的语言,它为不同语言提供了存储、搜索和替换文本的统一方法。Unicode 作为一种标准,其中包含了用于可视化参考的编码图表(code charts)、一组标准字符编码、一组编码方案、一组参考数据文件以及许多相关项目。我们在网络上看到的很多资料会将 Unicode 仅视作一个字符集,这种理解是不正确的。

    Unicode 转换格式 (Unicode Transformation Format):是 Unicode encoding formUnicode encoding scheme 的模糊同义词,优先使用后两者。

    Unicode 签名 (Unicode Signature):是一个隐式标记,用于将文件标识为包含特定"编码模式"的 Unicode 文本。初始化字节顺序标记(BOM)可用作 Unicode 签名。

    Unicode 字符串 (Unicode String):一个"编码单元序列 ",其中包含了特定 Unicode "编码模式"下的"编码单元"。(See definition D80 in Section 3.9, Unicode Encoding Forms.)

    Unicode 字符数据库 (Unicode Character Database):有关 Unicode 字符属性和映射关系的规范及详细信息的一组文件。

    编码空间 (Codespace):(1) 可用于编码字符的数值范围。(2) 对于 Unicode 标准,编码空间的范围是 0x0 ~ 0x10FFFF。(See definition D9 inSection 3.4, Characters and Encoding.)

    字素 (Grapheme):在特定书写系统的背景下,最低限度的独特写作单位。示例:在英文书写系统中 ‹b› 和 ‹d› 是不同的字素,因为它们会形成不同的单词,如 big 和 dig。但是,小写拉丁字母 a 和小写罗马字母 a 并没有明显区别,因为在这两种不同形式的基础上不能区分出不同的单词。 (2) 用户认为的字符

    渲染 (Rendering). (1) 为了描绘字符,而选择并布局字形的过程。(2) 在显示设备上显示字形的过程。

    传输编码语法 (Transfer Encoding Syntax):应用于文本和其它数据的可逆转换,数据需要经过转换后才允许被传输,例如 Base64 和 uuencode。

    字形

    字形 (glyph):(1)表示一个或多个"字形图形"的抽象形式。(2)与字形图像(glyph image)同义。在显示 Unicode 字符数据时,可以选择一个至多个字形来描绘特定字符。在合成(composition )和布局(layout)处理期间,会通过渲染引擎选择这些字形。(See also character.)

    字形代码 (Glyph Code):用于引用字形的数字代码。通常会通过字形代码来引用字体(font)中包含的字形。字形代码可以是特定字体的本地代码;也就是说,包含相同字形的不同字体可以使用不同的代码。

    字形标识符 (Glyph Identifier):与字形代码类似,字形标识符是用于引用字体内字形的标签。字体可以采用本地和全局字形标识符。

    字形图像 (Glyph Image):已经点阵化(rasterized)或以其它方式成像到某些显示表面的字形表示的具体图像。The actual, concrete image of a glyph representation having been rasterized or otherwise imaged onto some display surface.

    字体 (Font):字形的集合,用于字符数据的可视化描述。字体通常会关联一组参数[例如,size, posture, weight, serifness],在为参数设置特定值后,便会生成一个图像化(imagable)的字形集合。

    字符

    字符 (Character):(1)在书面语言中具备语义价值的最小组成部分,泛指抽象的意义和[或]形状(shape),而非特定的形状 (see also glyph);然而在编码表(code tables)中,为了便于读者理解,呈现某种形式的视觉表示是必不可少的。(2)抽象字符的同义词。(3)Unicode 字符编码的基本单元。(4) The English name for the ideographic written elements of Chinese origin. [See ideograph (2).]

    抽象字符(Abstract Character):用于组织、控制或表示文本数据的信息单元。(See definition D7 in Section 3.4, Characters and Encoding.)。

    • 抽象字符没有具体形式,不应与字形(glyph)混淆
    • 抽象字符不一定与用户认为的“字符”相对应,不应与字素( grapheme )混淆。例如,可能只是字素的一部分,比如一个汉字的部首。

    抽象字符序列 (Abstract Character Sequence):一个或多个抽象字符的有序序列(See definition D8 in Section Section 3.4, Characters and Encoding.)

    字符集 (Character Set):用于表示文本信息的元素的集合(collection)。可将字符集理解为编码字符集,至少包含了码点和抽象字符。

    字符仓库 (Character Repertoire):一个字符集(Character Set)中所包含的字符集合(collection)。

    编码字符

    已编码字符 (Encoded Character):抽象字符(abstract character)和码点(code point)之间的关联(或映射)[See definition D11 in Section 3.4, Characters and Encoding.]。抽象字符本身没有数值值,但"encoding a character"的步骤会将特定的码点与特定的抽象字符关联。

    • An encoded character is also referred to as a coded character.

    • 虽然"已编码字符"在术语中的正式定义是,抽象字符和码点之间的映射;但非正式地来讲,"已编码字符"可被认为是与为其分配的码点一起使用的抽象字符。

    • 有时,为了与其他标准兼容,单个抽象字符可能会对应多个码点,比如 "Å" 拥有两个对应的码点: U+00C5 和 U+212B。

    • 单个字符也可由一系列码点表示,比如 "Å" 也可被表示为码点序列:U+0041 U+030A,而不再是被映射到单个码点。

      [图片上传失败...(image-b08788-1538236458630)]

    已编码字符序列 (Coded Character Sequence):一个或多个码点构成的有序序列。通常,由一系列编码字符组成,但也可能包含非字符(noncharacters)或保留(reserved)码点。(See definition D12 in Section 3.4, Characters and Encoding.) 另外,Coded Character Representation 与 coded character sequence 同义

    已编码字符集(coded character set):是一个字符集,其中的每个字符都分配有数值码点,或说每个字符都拥有各自的码点。通常会简写为字符集(character set)、charset、编码集(code set)。A character set in which each character is assigned a numeric code point.

    码点

    码点(code point):(1) Unicode 编码空间(codespace)中的任意值,也就是说可以是 0 ~ 0x10FFFF 中的任意值。(See definition D10 in Section 3.4, Characters and Encoding.) 不是所有码点都会被分配给已编码字符。(2) 指已编码字符集中某个字符的值或位置。
    在 Unicode 标准中,码点采用 16 进制书写,并加上前缀 U+ (例如,拉丁字母 A 的码点是 U+0041 )。Unicode 的码点可以分成 17 个代码级别(code plane):

    • 第一个代码级别被称为基本多语言级别(basic multilingual plane - BMP),码点从 U+0000 到 U+FFFF,其中包括经典的 Unicode 代码;

    • 其余的 16 个级别码点从 U+10000 到 U+10FFFF,其中包括一些辅助字符(Supplementary character)

      tips: 可参考 Code point planes and blocks 可获取更详细的解释

    码点类型 (Code Point Type):Unicode 标准中将码点分为 7 种基础类型:Graphic, Format, Control, Private-Use, Surrogate, Noncharacter, Reserved. (See definition D10a in Section 3.4, Characters and Encoding.)

    保留码点(Reserved Code Point):Unicode 标准中留作将来使用的码点,也称为未分配码点(unassigned code point)

    已指定码点 (Designated Code Point):任何已分配给抽象字符 [assigned characters ] 或已通过标准赋予了规定功能的码点[ surrogate code points and noncharacters ]。该定义排除了保留的代码点。Designated Code Point 与 assigned code point 同义。(See Section 2.4 Code Points and Characters.)

    未分配字符(Unassigned Character):未分配给抽象字符的码点,包含代理(surrogate)码点、非字符(noncharacters)以及保留码点。 (See Section 2.4, Code Points and Characters.)

    已分配字符 (Assigned Character):已被分配给抽象字符的码点,是指在 Unicode 标准中已编码的字符——graphic, format, control, and private-use characters。(See Section 2.4, Code Points and Characters.)

    标量值

    Unicode 标量值 (Scalar Value):除开高代理码点(high-surrogate)和低代理码点(low-surrogat )之外的任何 Unicode 码点都是标量值,具体范围是 0x0 ~ 0xD7FF 和 0xE000 ~ 0x10FFFF。代理码点不能通过"编码模式"映射为"编码单元序列",只有标量值可被映射为"编码单元序列"。(See definition D76 in Section 3.9, Unicode Encoding Forms.)

    代理

    代理字符 (Surrogate Character):错误用词,它是指具有代理码点的已编码字符,不要使用该术语。

    代理码点 (Surrogate Code Point):位于 U+D800 ~ U+DFFF 之间的 Unicode 码点属于作代理码点,保留共 UTF-16 使用。UTF-16 使用一对代理编码单元"表示"辅助码点。

    代理对 (Surrogate Pair):用于表示单个抽象字符,由包含两个 16-bit 编码单元的序列构成。代理对中的第一个值被称作高代理(high-surrogate)编码单元,第二个值被称作低代理(low--surrogate)编码单元。(See definition D75 in Section 3.8, Surrogates.)

    高代理码点 (High-Surrogate Code Point):位于 U+D800 ~ U+DBFF 间的 Unicode 码点属于高代理码点。(See definition D71 in Section 3.8, Surrogates.)

    高代理编码单元 (High-Surrogate Code Unit):位于 0xD800 ~ 0xDBFF 间的 16-bit 编码单元,在 UTF-16 中被用作代理对的第一个编码单元。(See definition D72 in Section 3.8, Surrogates.)

    低代理码点 (Low-Surrogate Code Point):位于 U+DC00 ~ U+DFFF 间的 Unicode 码点属于低代理码点。(See definition D73 in Section 3.8, Surrogates.)

    低代理编码单元 (Low-Surrogate Code Unit):位于 0xDC00~ 0xDFFF 间的 16-bit 编码单元,在 UTF-16 中被用作代理对的第二个编码单元。(See definition D74 in Section 3.8, Surrogates.)

    编码单元

    编码单元(code unit):也称编码值(Code Value),表示用于处理或交换编码文本的基本单元。Unicode 标准在 UTF-8 编码模式中使用 8-bit 编码单元;在 UTF-16 编码模式中使用 16-bit 编码单元;在 UTF-32 编码模式中使用 32-bit 编码单元。

    编码模式

    Unicode 编码模式 (Unicode Encoding Form):一组字符编码模式,用于为每个 Unicode 标量值(scalar value)分配一个唯一的"编码单元序列"。Unicode 标准定义了三种 Unicode 编码模式:UTF-8, UTF-16, and UTF-32。(See definition D79 in Section 3.9, Unicode Encoding Forms.)

    字符编码模式 (Character Encoding Form):简称编码模式,将字符集中的定义(definition)映射到表示数据的实际编码单元。另外,Encoding Form 与 character encoding form 同义

    编码方案

    Unicode 编码方案 (Encoding Scheme):是指拥有特定字节序列的 Unicode 编码模式。如果允许的话,会包含字节顺序标记(byte order mark - BOM)。(See definition D94 in Section 3.10, Unicode Encoding Schemes.)

    字符编码方案 (Character Encoding Scheme):字符编码模式加上字节序列。Unicode 中有 7 中编码方案:UTF-8, UTF-16, UTF-16BE, UTF-16LE, UTF-32, UTF-32BE, UTF-32LE。另外,Encoding Scheme 与 character encoding scheme 同义

    字节序列

    字节序列 (Byte Serialization):The order of a series of bytes determined by a computer architecture.

    字节序列标记 (byte order mark - BOM):Unicode 字符 U+FEFF 用于表示文本的字节顺序(See Section 2.13, Special Characters and Noncharacters, and Section 23.8, Specials.)

    Little-endian :A computer architecture that stores multiple-byte numerical values with the least significant byte (LSB) values first. 低字节优先,小端模式

    Big-endian. A computer architecture that stores multiple-byte numerical values with the most significant byte (MSB) values first. 高字节优先,大端模式

    UTF

    转换格式 (Transformation Format):从已编码字符序列到唯一编码序列的映射(typically bytes)。

    UTF :Unicode (or UCS) Transformation Format 的缩写。

    UTF-2 :UTF-8 的曾用名,现已废弃。

    UTF-7 :Unicode (or UCS) Transformation Format, 7-bit 编码模式,由 RFC-2152 详细定义。

    UTF-8

    UTF-8 :用于文本的多字节编码,会使用 1 ~ 4 个字节来表示任意 Unicode 字符,并且向后兼容 ASCII。网页中的 Unicode 以 UTF-8 为主。

    UTF-8 编码模式 (Encoding Form):一种 Unicode 编码模式,会为每个 Unicode 标量值分配一个唯一的无符号字节序列,该序列的长度是 1 ~ 4 字节。下表展示了 UTF-8 中比特位编码方式: (See definition D92 in Section 3.9, Unicode Encoding Forms.)

    Scalar Value First Byte Second Byte Third Byte Fourth Byte
    00000000 0xxxxxxx 0xxxxxxx
    00000yyy yyxxxxxx 110yyyyy 10xxxxxx
    zzzzyyyy yyxxxxxx 1110zzzz 10yyyyyy 10xxxxxx
    000uuuuu zzzzyyyy yyxxxxxx 11110uuu 10uuzzzz 10yyyyyy 10xxxxxx

    UTF-8 编码方案 (Encoding Scheme):一种 Unicode 编码方案,使用与 UTF-8 "编码单元序列"自身完全相同的顺序来序列化"编码单元序列"。(See definition D95 in Section 3.10, Unicode Encoding Schemes.)The Unicode encoding scheme that serializes a UTF-8 code unit sequence in exactly the same order as the code unit sequence itself.

    UTF-16

    UTF-16 :用于文本的多字节编码,会使用 2 或 4 个字节来表示任意 Unicode 字符,不向后兼容 ASCII 。UTF-16 是许多编程语言中 Unicode 的内部模式,如 Java、C#、JavaScript 以及许多操作系统。

    UTF-16 编码模式 (Encoding Form):一种 Unicode 编码模式,会为 U+0000..U+D7FF 和 U+E000..U+FFFF 中的每个 Unicode 标量值分配一个唯一的无符号 16-bit 编码单元(编码单元的值与 Unicode 标量值相等);会为 U+10000..U+10FFFF 中的每个 Unicode 标量值分配一个唯一代理对。下表展示了 UTF-16 中比特位编码方式: (See definition D91 in Section 3.9, Unicode Encoding Forms.)

    Scalar Value UTF-16
    xxxxxxx xxxxxxxxx xxxxxxxx xxxxxxxx
    000uuuuu xxxxxxxx xxxxxxxx 110110wwwwxxxxxx 110111xxxxxxxxxx

    UTF-16 编码方案 (Encoding Scheme):该编码方案会将 UTF-16 "编码单元序列"序列化为 big-endian 或 little-endian 格式的字节序列。(See definition D98 in Section 3.10, Unicode Encoding Schemes.)

    UTF-16BE :一种 Unicode 编码方案,会将 UTF-16 "编码单元序列"序列化为 big-endian 格式的字节序列。(See definition D96 in Section 3.10, Unicode Encoding Schemes.)

    UTF-16LE :一种 Unicode 编码方案,会将 UTF-16 "编码单元序列"序列化为 little-endian 格式的字节序列。(See definition D96 in Section 3.10, Unicode Encoding Schemes.)

    UTF-32

    UTF-32 :用于文本的多字节编码,会使用 4 个字节来表示任意 Unicode 字符;不向后兼容 ASCII 。

    UTF-32 编码模式 (Encoding Form):一种 Unicode 编码模式,会为每个 Unicode 标量值分配一个唯一的无符号 32-bit 编码单元(编码单元的值与 Unicode 标量值相等)。(See definition D90 in Section 3.9, Unicode Encoding Forms.)

    UTF-32 编码方案 (Encoding Scheme):该 Unicode 编码方案会将 UTF-32 "编码单元序列" 序列化为 big-endian 或 little-endian 格式的字节序列。(See definition D101 in Section 3.10, Unicode Encoding Schemes.)

    UTF-32BE :一种 Unicode 编码方案,会将 UTF-32 "编码单元序列"序列化为 big-endian 格式的字节序列。(See definition D99 in Section 3.10, Unicode Encoding Schemes.)

    UTF-32LE :一种 Unicode 编码方案,会将 UTF-32 "编码单元序列"序列化为 little-endian 格式的字节序列。 (See definition D100 in Section 3.10, Unicode Encoding Schemes.)

    UCS

    UCS - Universal Character Set 通用字符集,由 International Standard ISO/IEC 10646 所规定,与 Unicode 标准相同。

    UCS-2 :ISO/IEC 10646 编码模式,使用两个 8 位编码通用字符集,仅限于基本多语言平面,不能编码辅助平面。

    UCS-4 :ISO/IEC 10646 编码模式:使用 4 个 8 位编码通用字符集,适用于所有平面。

    相关文章

      网友评论

          本文标题:Unicode 常见术语

          本文链接:https://www.haomeiwen.com/subject/knbzwftx.html