1001Ferramentas
📜Converters

Ascii85 (Adobe)

Encode and decode data in Ascii85 (Base85), the compact format used in PostScript and PDF, with the Adobe <~ and ~> delimiters.

Ascii85

How PDF packs binary data into text

You opened a PDF in a text editor and hit a block wrapped in <~ and ~>, or you are debugging a PostScript stream and need to reproduce the encoding by hand. That block is Ascii85. This page encodes whatever text you type and prints the result with the Adobe delimiters already attached, refreshing on every keystroke.

The math groups four bytes into a 32-bit integer and writes it as five base-85 digits, adding 33 to each digit so it lands in the printable range from ! to u. Four zero bytes collapse into a single z, a shortcut that applies only to complete groups. An incomplete final group is padded with zeros and emitted with one character more than its byte count. Man plus a space becomes <~9jqo^~>, and Hello becomes <~87cURDZ~>.

The gain over Base64 is real but small, and the numbers are worth knowing: 5 characters per 4 bytes against 4 per 3, so 25% overhead instead of 33%. When pasting into a PDF, strip the leading <~ — the ASCII85Decode filter expects only ~> as its end-of-data marker, and some parsers choke on the prefix. This page encodes only, although the description mentions decoding, and input is read as UTF-8. It all runs in the browser.

Frequently asked questions

What is the z that shows up in the middle?
It is the shortcut for four consecutive zero bytes, saving four characters. It may only appear for a complete group, never for a short final one.
Can I paste this straight into a PDF stream?
Almost. Drop the leading <~, because the PDF ASCII85Decode filter recognises only ~> as the end-of-data marker.
Is this the same as Git's Base85 or RFC 1924?
No. All three use 85 symbols but different alphabets. Switching variants changes the output entirely, so check which one the other side expects.

Related Tools