...

パッケージ ascii85

import "encoding/ascii85"
概要
目次

概要 ▾

ascii85 パッケージは,btoa ツールや Adobe の Postscript と PDF ドキュメントフォーマットで使われる ascii85 データエンコードを実装します。

func Decode

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

Decode (デコード) は src を dst にデコードし, dst に書き込まれたバイト数と src から消費された数の両方を返します。 src に無効な ascii85 データが含まれている場合, Decode は正常に書き込まれたバイト数と CorruptInputError を返します。 デコードは, src 内のスペースと制御文字を無視します。 多くの場合, ascii85 でエンコードされたデータは <~ と ~> の記号で囲まれています。 Decode はこれらが呼び出し側によって取り除かれていると期待します。

flush が true の場合, Decode は src が入力ストリームの終わりを表しているとみなし, 別の 32 ビットブロックを待つのではなく,src を完全に処理します。

NewDecoder は Decode の周りに io.Reader インターフェースをラップします。

func Encode

func Encode(dst, src []byte) int

Encode (エンコード) は, src を最大で MaxEncodedLen(len(src)) バイトの dst にエンコードし,書き込まれた実際のバイト数を返します。

エンコーディングは,最後のフラグメントに特殊なエンコーディングを使用して 4 バイトのチャンクを処理します。 Encode は大きなデータストリームの個々のブロックでの使用には適していません。 代わりに NewEncoder() を使用してください。

多くの場合, ascii85 でエンコードされたデータは <~ と ~> の記号で囲まれています。 Encode はこれらを追加しません。

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 ビットブロックで動作します。 書き込みが終了したら,呼び出し側は返されたエンコーダを Close して, 末尾の部分ブロックをフラッシュする必要があります。

type CorruptInputError

type CorruptInputError int64

func (CorruptInputError) Error

func (e CorruptInputError) Error() string