Ascii85
From Just Solve the File Format Problem
(Difference between revisions)
Line 3: | Line 3: | ||
|subcat=Transfer Encodings | |subcat=Transfer Encodings | ||
}} | }} | ||
− | [[Ascii85]], or '''Base85''', is a binary-to-text encoding. It is similar in concept to [[Base64]] and [[Uuencoding|Uuencode]]. | + | [[Ascii85]], '''ASCII base-85''', or '''Base85''', is a binary-to-text encoding originally implemented by Paul Rutter in the '''btoa''' program. It is similar in concept to [[Base64]] and [[Uuencoding|Uuencode]]. A slight modification of it is used in [[PDF]] and [[PostScript]] files. It is also used in the [http://sourceforge.net/projects/mktags/ MkTags Matroska tag editor]. There are several varieties of this encoding. |
== Identification == | == Identification == | ||
− | + | The original [[uuencoding]]-like format used in '''btoa''' is delimited by lines that begin with "<code>xbtoa Begin</code>" and "<code>xbtoa End</code>". | |
− | + | In PostScript, the "<code><~</code>" delimiter marks the beginning of an ASCII base-85 string literal. The "<code>~></code>" EOD marker is added by the ASCII85Encode filter when it is closed, hence it should be regarded as being part of the encoded data. Outside of PostScript, there is no official delimiter to mark the beginning of ASCII base-85 encoded data. In PDF, they solve it by putting the data (including the EOD marker) in a stream object, but that's a different story. | |
== Software == | == Software == |
Revision as of 10:22, 23 June 2015
Ascii85, ASCII base-85, or Base85, is a binary-to-text encoding originally implemented by Paul Rutter in the btoa program. It is similar in concept to Base64 and Uuencode. A slight modification of it is used in PDF and PostScript files. It is also used in the MkTags Matroska tag editor. There are several varieties of this encoding.Identification
The original uuencoding-like format used in btoa is delimited by lines that begin with "xbtoa Begin
" and "xbtoa End
".
In PostScript, the "<~
" delimiter marks the beginning of an ASCII base-85 string literal. The "~>
" EOD marker is added by the ASCII85Encode filter when it is closed, hence it should be regarded as being part of the encoded data. Outside of PostScript, there is no official delimiter to mark the beginning of ASCII base-85 encoded data. In PDF, they solve it by putting the data (including the EOD marker) in a stream object, but that's a different story.
Software
- ascii85.tgz
- btoa-5.2.tar.gz
- ASCII85-Tools, Perl command-line utilities - C version also available.
- MPPerl::Convert::ASCII85::XS, a Perl module with time-critical code written in C
- Ascii85 libraries are readily available for most popular programming languages.
Links
- Wikipedia article
- Online ASCII85 encoder
- Online ASCII85 decoder
- RFC 1924: A Compact Representation of IPv6 Addresses