Ascii85

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(sample files)
 
(9 intermediate revisions by 2 users not shown)
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]]. It is often used in [[PDF]] and [[PostScript]] files, and rarely anywhere else. There are several varieties of it.
+
[[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 ==
In PostScript, the "<code>&lt;~</code>" delimiter marks the beginning of an ASCII base-85 string literal. The "<code>~&gt;</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.
+
In the original [[uuencoding]]-like format used by 'btoa', the encoded data is delimited by lines that begin with "<code>xbtoa Begin</code>" and "<code>xbtoa End</code>". In a newer version of the format, the first line begins with "<code>xbtoa5&nbsp;</code>".
  
There is also a [[uuencoding]]-like format, delimited by lines that begin with "<code>xbtoa Begin</code>" and "<code>xbtoa End</code>".
+
In PostScript, the "<code>&lt;~</code>" delimiter marks the beginning of an ASCII base-85 string literal. The "<code>~&gt;</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 it doesn't matter, since the data (including the EOD marker) is stored in a stream object.
  
 
== Software ==
 
== Software ==
 
* [http://www.stillhq.com/extracted/ascii85.tgz ascii85.tgz]
 
* [http://www.stillhq.com/extracted/ascii85.tgz ascii85.tgz]
* [ftp://ftp.freebsd.org/pub/FreeBSD/ports/distfiles/btoa-5.2.tar.gz btoa-5.2.tar.gz]
+
* [ftp://ftp.uk.freebsd.org/pub/OpenBSD/distfiles/btoa-5.2.tar.gz btoa-5.2.tar.gz]
 
* [http://sourceforge.net/projects/ascii85-tools/ ASCII85-Tools, Perl command-line utilities] - C version also available.
 
* [http://sourceforge.net/projects/ascii85-tools/ ASCII85-Tools, Perl command-line utilities] - C version also available.
 
* [http://sourceforge.net/projects/mpperl-convert-ascii85-xs/ MPPerl::Convert::ASCII85::XS, a Perl module with time-critical code written in C]
 
* [http://sourceforge.net/projects/mpperl-convert-ascii85-xs/ MPPerl::Convert::ASCII85::XS, a Perl module with time-critical code written in C]
 
* Ascii85 libraries are readily available for most popular programming languages.
 
* Ascii85 libraries are readily available for most popular programming languages.
 +
 +
== Sample files ==
 +
* {{DexvertSamples|archive/btoaEncoded}}
  
 
== Links ==
 
== Links ==

Latest revision as of 13:24, 30 July 2024

File Format
Name Ascii85
Ontology
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.

Contents

[edit] Identification

In the original uuencoding-like format used by 'btoa', the encoded data is delimited by lines that begin with "xbtoa Begin" and "xbtoa End". In a newer version of the format, the first line begins with "xbtoa5 ".

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 it doesn't matter, since the data (including the EOD marker) is stored in a stream object.

[edit] Software

[edit] Sample files

[edit] Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox