> adobe | postscript | pdf <

// Ascii85 - Adobe 用于 PostScript/PDF 的 Base85 编码

[ADOBE]

Adobe 标准

被全球 PostScript 和 PDF 文档采用的官方编码方案。

[EFFICIENT]

25% 开销

相比 Base64 更高效,体积仅增加约 25%。

[COMPACT]

零压缩优化

特殊的 'z' 字符可以高效表示连续四个零字节。

>> 技术说明

Ascii85 的工作原理:

Ascii85 将 4 个字节编码为 5 个可打印的 ASCII 字符(33–117)。它对全为零的字节组('z')使用特殊编码,并在 Adobe 的实现中使用 <~ ~> 作为包裹定界符。

示例:

"Hello" → <~87cURD]i,"~>

为什么选择 Ascii85:

  • >Adobe PostScript/PDF 标准
  • >25% 开销,对比 Base64 约 33%
  • >针对零数据的高效压缩
  • >输出为可打印 ASCII 字符
  • >得到众多工具和库的支持

>> 常见问题

什么是 Ascii85 编码?

Ascii85(也叫 Base85)是 Adobe 提出的二进制到文本编码方案,用于 PostScript 和 PDF 文件。它使用 85 个可打印 ASCII 字符来表示二进制数据。

<~ ~> 分隔符是什么?

<~ 和 ~> 是 Adobe 实现中的 Ascii85 包裹定界符,用来标记编码数据的开始和结束,方便解析器在 PostScript/PDF 文件中找到被编码的片段。

Ascii85 与 Z85 有什么区别?

虽然它们都属于 Base85 变体,Ascii85 使用不同的字符集并允许空白字符,更适合 PostScript/PDF;而 Z85 针对源代码和协议做了优化。

字母 'z' 有什么含义?

'z' 是 Ascii85 中的一个特殊压缩符号,表示连续四个零字节,这让包含大量零的二进制数据编码更高效。

其他语言