encoding/ascii85

Package ascii85

  • import "encoding/ascii85"

  • 概述

  • 索引

概述

软件包 ascii85 实现了 btoa 工具和 Adobe 的 PostScript 和 PDF 文档格式中使用的 ascii85 数据编码。

索引

  • func Decode(dst, src []byte, flush bool) (ndst, nsrc int, err error)

  • func Encode(dst, src []byte) int

  • func MaxEncodedLen(n int) int

  • func NewDecoder(r io.Reader) io.Reader

  • func NewEncoder(w io.Writer) io.WriteCloser

  • type CorruptInputError

  • func (e CorruptInputError) Error() string

包文件

ascii85.go

func Decode(查看源代码)

func Decode(dst, src []byte, flush bool) (ndst, nsrc int, err error)

解码将 src 解码为 dst,返回写入 dst 的字节数和从 src 消耗的数字。如果 src 包含无效的 ascii85 数据, Decode 将返回成功写入的字节数和一个 CorruptInputError。解码会忽略 src 中的空格和控制字符。通常,ascii85 编码的数据被封装在 <〜 和 〜> 符号中。解码期望这些被调用者剥离。

如果 flush 为 true,则 Decode 假定 src 表示输入流的结束并完全处理,而不是等待另一个 32 位块的完成。

NewDecoder 围绕 Decode 包装一个 io.Reader 接口。

func Encode(查看源代码)

func Encode(dst, src []byte) int

将编码的 src 编码为至多 dst 的 MaxEncodedLen(len(src))

编码处理4字节块,对最后一个片段使用特殊编码,所以 Encode 不适用于大数据流的各个块。改用 NewEncoder()。

通常,ascii85 编码的数据被封装在 <〜 和 〜> 符号中。编码不会添加这些。

func MaxEncodedLen(查看源代码)

func MaxEncodedLen(n int) int

MaxEncodedLen 返回 n 个源字节的最大编码长度。

func NewDecoder(查看源代码)

func NewDecoder(r io.Reader) io.Reader

NewDecoder 构造一个新的 ascii85 流解码器。

func NewEncoder(查看源代码)

func NewEncoder(w io.Writer) io.WriteCloser

NewEncoder 返回一个新的 ascii85 流编码器。写入返回的作者的数据将被编码,然后写入 w。Ascii85 编码在 32 位块中运行;写完后,调用者必须关闭返回的编码器以刷新任何尾部分块。

type CorruptInputError(查看源代码)

type CorruptInputError int64

func (CorruptInputError) Error(查看源代码)

func (e CorruptInputError) Error() string