fbpx
维基百科

統一碼標準壓縮方案

統一碼標準壓縮方案[1](英語:Standard Compression Scheme for Unicode,縮寫:SCSU)[2],是一種統一碼技術標準。用於減少統一碼文本所需使用的字節數,尤其是該文本中所使用的字符,主要集中在一種或幾種語言區段。它的作法主要是將 128– 255 范围内的值,动态映射到 以 128 個字符為單位的特定區段的偏移量来实现。编码器的初始条件則是ASCIIISO-8859-1中不包含除 NULL TAB CR 和 LF 之外的 C0 控制代码的现有字符串可以被视为 SCSU 字符串。


由于大多数字母在統一碼所使用的碼位,通常會是區塊中的連續位置,所以如果文本使用小寫字母、 ASCII 標點符號或窗口內的其它標點符號,可以按每个字符一个字节进行编码(需另外加上前置成本,对常见语言通常只有 1 个字节),大多数其他标点符号可以通过非锁定移位的方式,以每個字符使用 2 個位元組进行编码。統一碼標準壓縮方案还可以在內部切換到UTF-16模式,以处理非字母语言。

SCSU 是IANA注册的字符集[3]

历史和使用 编辑

最初,是由路透社开发了 SCSU,並以此命名為「統一碼的路透社壓縮方案」(英語:Reuters Compression Scheme for Unicode,RSCU)。 [4] [5] [6] [7]

起初統一碼聯盟认为它是一种字符编码, [8]在 1999 年則改变了看法:虽然它仍然被认为是一种传输用途编码语法,但有一段时间它不再被认为是一种字符编码,這是因为對同一份文件,不同的压缩器可能会产生不同的输出。 [9]然而,在 2004 年,该决定被撤销,现在 SCSU 被认为是一种压缩字符编码方案,而不是简单或复合字符编码方案。 [10]

Roman Czyborra(GNU Unifont)编写了一个解压器。 [11] IBM 相关的解压缩器可以在國際統一碼部件中找到,还有一个用 Java 编写的压缩器。 [12]更简单的参考编解码器可作为 TR6 的附件提供。

Symbian OS是一种用于手机和其他移动设备的操作系统,它使用此壓縮方案來將字符串序列化。

SQL Server 2008 R2使用 SCSU,其壓縮針對的對象則是存储在nchar(n)nvarchar(n)列中的統一碼值(即以UCS-2编码的字符串),其節省的空間達到了 15% 到 50% (而UTF-8只能對統一碼中的ASCII子集减少 50%),具体取决于資料的语言。 [13]

方案 编辑

以下部分简要描述了压缩 SCSU 流的解剖结构。有关完整说明(与解压缩器的说明相匹配),请参阅 UTS #6 文档。

编码方式 编辑

SCSU 以单字节模式启动,该模式使用压缩的窗口编码。使用一些指令用來轉換到UTF-16BE“統一碼”模式以及从该模式切换到单字节模式的命令。

窗口编码 编辑

SCSU 的核心在于使用一些窗口來定义了字节 0x80-0xff 的意義。有八个靜態窗口用于简单文字和标点符号,以及六個動態窗口(加上“半 Unicode 區段”窗口和用于补充平面的自定义窗口)用于使用更多字符。

简单和动态窗口都是通过特殊命令字符选择的。对于不适合当前块的单个字符,提供用于引用的命令字符。

與通用純文本壓縮方案的比较 编辑

由于 UTF-16 或 UTF-8 文本可能比在 Unicode 之前的编码中占用的空间更多,因此人们可能希望使用压缩(例如 SCSU)来缓解这一问题。 [14]与通用压缩机相比,使用 SCSU 不一定有优势。 [7]此外,虽然它可以用作文本编码,但由于算法的状态性质,将其用作内部文本表示时可能会出现困难,因为基本文本操作变得非常重要。

纯粹作为一种压缩算法处理,在處理超過幾 K 的文本,SCSU 不如最常用的通用算法来处理。

在某些情況下,標準壓縮方案確實是有優勢的。對於那些較短(使用的字符量不多)的文本,它可以有效壓縮文本,而大多数的全尺寸壓縮器,它們本身的開銷通常需要額外耗費数百位元組。在Symbian OS中,甚至將此標準壓縮方案用于剪贴板操作,例如剪切、复制和粘贴小字符串文本。

在 HTML 中 编辑

W3C [15] [16]WHATWG [17] HTML 標準中,禁止在文档中支持統一碼標準壓縮方案,這是因为 HTML 的设计没有考虑到非 ASCII 兼容的编码。此外,已證明可以藉由浏览器对此类编码处理不当而导致的跨網站腳本漏洞。 [18]

另見 编辑

参考資料 编辑

  1. ^ About Unicode Terminology. unicode.org. [2021-12-10]. (原始内容于2021-04-21). 
  2. ^ UTS #6: Compression Scheme for Unicode. 2005-05-06 [2008-06-13]. (原始内容于2022-01-20). SCSU defines a compact encoding, which is sometimes useful. However, Unicode text is much more commonly stored and transmitted in UTF-8 which is less compact (except for ASCII), much simpler, and does not present any security issues. For longer texts, general-purpose compression is effective and common. 
  3. ^ IANA 的 SCSU 註冊記錄. [2021-11-17]. (原始内容于2021-12-08). 
  4. ^ Ninth International Unicode Conference - Friday - Track B. [2021-11-16]. (原始内容于2021-05-16). 
  5. ^ Tenth International Unicode Conference - Conference Program. [2021-11-16]. (原始内容于2021-11-16). 
  6. ^ Compression Scheme for Unicode. [2021-11-16]. (原始内容于2021-11-16). 
  7. ^ 7.0 7.1 . [2021-11-16]. 原始内容存档于2019-05-08. 
  8. ^ UTR#17: Character Encoding Model. [2021-11-16]. (原始内容于2021-11-16). 
  9. ^ https://unicode.org/reports/tr17/tr17-3.html#Transfer (页面存档备份,存于互联网档案馆) Encoding Syntax
  10. ^ UTR#17: Character Encoding Model. [2021-11-16]. (原始内容于2022-01-24). 
  11. ^ 存档副本. [2021-11-16]. (原始内容于2021-05-17). 
  12. ^ International Components for Unicode. 22 October 2021 [2021-11-16]. (原始内容于2021-11-16). 
  13. ^ Unicode Compression Implementation (SQL Server 2008 R2 Books Online). [2008-08-18]. (原始内容于2021-11-16). 
  14. ^ 存档副本 (PDF). [2021-11-16]. (原始内容 (PDF)于2022-01-19). 
  15. ^ 8.2.2.3. Character encodings. HTML 5.1 Standard. W3C. [2021-11-16]. (原始内容于2021-07-18). 
  16. ^ 8.2.2.3. Character encodings. HTML 5 Standard. W3C. [2021-11-16]. (原始内容于2019-07-03). 
  17. ^ 12.2.3.3 Character encodings. HTML Living Standard. WHATWG. [2021-11-16]. (原始内容于2022-01-07). 
  18. ^ . MDN Web Docs. Mozilla. (原始内容存档于3 October 2018). 

統一碼標準壓縮方案, 本條目存在以下問題, 請協助改善本條目或在討論頁針對議題發表看法, 此條目包含過多行話或專業術語, 可能需要簡化或提出進一步解釋, 2021年11月17日, 請在討論頁中發表對於本議題的看法, 並移除或解釋本條目中的行話, 此條目需要精通或熟悉字符编码的编者参与及协助编辑, 2021年11月17日, 請邀請適合的人士改善本条目, 更多的細節與詳情請參见討論頁, 另見其他需要字符编码專家關注的頁面, 英語, standard, compression, scheme, unicode, 縮寫, . 本條目存在以下問題 請協助改善本條目或在討論頁針對議題發表看法 此條目包含過多行話或專業術語 可能需要簡化或提出進一步解釋 2021年11月17日 請在討論頁中發表對於本議題的看法 並移除或解釋本條目中的行話 此條目需要精通或熟悉字符编码的编者参与及协助编辑 2021年11月17日 請邀請適合的人士改善本条目 更多的細節與詳情請參见討論頁 另見其他需要字符编码專家關注的頁面 統一碼標準壓縮方案 1 英語 Standard Compression Scheme for Unicode 縮寫 SCSU 2 是一種統一碼技術標準 用於減少統一碼文本所需使用的字節數 尤其是該文本中所使用的字符 主要集中在一種或幾種語言區段 它的作法主要是將 128 255 范围内的值 动态映射到 以 128 個字符為單位的特定區段的偏移量来实现 编码器的初始条件則是ASCII和ISO 8859 1中不包含除 NULL TAB CR 和 LF 之外的 C0 控制代码的现有字符串可以被视为 SCSU 字符串 由于大多数字母在統一碼所使用的碼位 通常會是區塊中的連續位置 所以如果文本使用小寫字母 ASCII 標點符號或窗口內的其它標點符號 可以按每个字符一个字节进行编码 需另外加上前置成本 对常见语言通常只有 1 个字节 大多数其他标点符号可以通过非锁定移位的方式 以每個字符使用 2 個位元組进行编码 統一碼標準壓縮方案还可以在內部切換到UTF 16模式 以处理非字母语言 SCSU 是IANA注册的字符集 3 目录 1 历史和使用 2 方案 2 1 编码方式 2 2 窗口编码 3 與通用純文本壓縮方案的比较 4 在 HTML 中 5 另見 6 参考資料历史和使用 编辑最初 是由路透社开发了 SCSU 並以此命名為 統一碼的路透社壓縮方案 英語 Reuters Compression Scheme for Unicode RSCU 4 5 6 7 起初統一碼聯盟认为它是一种字符编码 8 在 1999 年則改变了看法 虽然它仍然被认为是一种传输用途编码语法 但有一段时间它不再被认为是一种字符编码 這是因为對同一份文件 不同的压缩器可能会产生不同的输出 9 然而 在 2004 年 该决定被撤销 现在 SCSU 被认为是一种压缩字符编码方案 而不是简单或复合字符编码方案 10 Roman Czyborra GNU Unifont 编写了一个解压器 11 IBM 相关的解压缩器可以在國際統一碼部件中找到 还有一个用 Java 编写的压缩器 12 更简单的参考编解码器可作为 TR6 的附件提供 Symbian OS是一种用于手机和其他移动设备的操作系统 它使用此壓縮方案來將字符串序列化 SQL Server 2008 R2使用 SCSU 其壓縮針對的對象則是存储在nchar n 和nvarchar n 列中的統一碼值 即以UCS 2编码的字符串 其節省的空間達到了 15 到 50 而UTF 8只能對統一碼中的ASCII子集减少 50 具体取决于資料的语言 13 方案 编辑以下部分简要描述了压缩 SCSU 流的解剖结构 有关完整说明 与解压缩器的说明相匹配 请参阅 UTS 6 文档 编码方式 编辑 SCSU 以单字节模式启动 该模式使用压缩的窗口编码 使用一些指令用來轉換到UTF 16BE 統一碼 模式以及从该模式切换到单字节模式的命令 窗口编码 编辑 SCSU 的核心在于使用一些窗口來定义了字节 0x80 0xff 的意義 有八个靜態窗口用于简单文字和标点符号 以及六個動態窗口 加上 半 Unicode 區段 窗口和用于补充平面的自定义窗口 用于使用更多字符 简单和动态窗口都是通过特殊命令字符选择的 对于不适合当前块的单个字符 提供用于引用的命令字符 與通用純文本壓縮方案的比较 编辑由于 UTF 16 或 UTF 8 文本可能比在 Unicode 之前的编码中占用的空间更多 因此人们可能希望使用压缩 例如 SCSU 来缓解这一问题 14 与通用压缩机相比 使用 SCSU 不一定有优势 7 此外 虽然它可以用作文本编码 但由于算法的状态性质 将其用作内部文本表示时可能会出现困难 因为基本文本操作变得非常重要 纯粹作为一种压缩算法处理 在處理超過幾 K 的文本 SCSU 不如最常用的通用算法来处理 在某些情況下 標準壓縮方案確實是有優勢的 對於那些較短 使用的字符量不多 的文本 它可以有效壓縮文本 而大多数的全尺寸壓縮器 它們本身的開銷通常需要額外耗費数百位元組 在Symbian OS中 甚至將此標準壓縮方案用于剪贴板操作 例如剪切 复制和粘贴小字符串文本 在 HTML 中 编辑W3C 15 16 和WHATWG 17 HTML 標準中 禁止在文档中支持統一碼標準壓縮方案 這是因为 HTML 的设计没有考虑到非 ASCII 兼容的编码 此外 已證明可以藉由浏览器对此类编码处理不当而导致的跨網站腳本漏洞 18 另見 编辑統一碼二進制有序壓縮 國際統一碼部件 可以在 SCSU 和其他統一碼编码之间进行转换的库参考資料 编辑 About Unicode Terminology unicode org 2021 12 10 原始内容存档于2021 04 21 UTS 6 Compression Scheme for Unicode 2005 05 06 2008 06 13 原始内容存档于2022 01 20 SCSU defines a compact encoding which is sometimes useful However Unicode text is much more commonly stored and transmitted in UTF 8 which is less compact except for ASCII much simpler and does not present any security issues For longer texts general purpose compression is effective and common IANA 的 SCSU 註冊記錄 2021 11 17 原始内容存档于2021 12 08 Ninth International Unicode Conference Friday Track B 2021 11 16 原始内容存档于2021 05 16 Tenth International Unicode Conference Conference Program 2021 11 16 原始内容存档于2021 11 16 Compression Scheme for Unicode 2021 11 16 原始内容存档于2021 11 16 7 0 7 1 A survey of Unicode compression 2021 11 16 原始内容存档于2019 05 08 UTR 17 Character Encoding Model 2021 11 16 原始内容存档于2021 11 16 https unicode org reports tr17 tr17 3 html Transfer 页面存档备份 存于互联网档案馆 Encoding Syntax UTR 17 Character Encoding Model 2021 11 16 原始内容存档于2022 01 24 存档副本 2021 11 16 原始内容存档于2021 05 17 International Components for Unicode 22 October 2021 2021 11 16 原始内容存档于2021 11 16 Unicode Compression Implementation SQL Server 2008 R2 Books Online 2008 08 18 原始内容存档于2021 11 16 存档副本 PDF 2021 11 16 原始内容存档 PDF 于2022 01 19 8 2 2 3 Character encodings HTML 5 1 Standard W3C 2021 11 16 原始内容存档于2021 07 18 8 2 2 3 Character encodings HTML 5 Standard W3C 2021 11 16 原始内容存档于2019 07 03 12 2 3 3 Character encodings HTML Living Standard WHATWG 2021 11 16 原始内容存档于2022 01 07 lt meta gt HTML MDN Web Docs Mozilla 原始内容存档于3 October 2018 取自 https zh wikipedia org w index php title 統一碼標準壓縮方案 amp oldid 74922510, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。