Перейти к содержанию
TextArray
100% локально

Ascii85 кодирует и декодирует

Кодируйте текст в Ascii85 (base85) и декодируйте его обратно с дополнительными разделителями Adobe.

Входные данные

Ascii85 кодирует и декодирует

Ascii85, также называемый base85, упаковывает двоичные данные в печатный текст более плотно, чем Base64. Он отображает каждые четыре байта на пять символов, взятых из "!" через «u», так что выпуск вырастет лишь примерно на четверть вместо трети. Именно из-за этой плотности Adobe встроила его в PostScript и PDF, где он оборачивает встроенные изображения, шрифты и потоки, и почему он появляется в двоичных патчах Git и собственных идентификаторах объектов Git.

Выберите направление и вставьте текст. Кодирование принимает входные байты UTF-8 и преобразует их группу за группой; последняя частичная группа размером от одного до трех байтов дополняется и обрезается точно так, как того требует спецификация Adobe, поэтому длина всегда повторяется. Декодирование меняет ситуацию: пробелы и разрывы строк во вставленном значении игнорируются, поэтому данные, скопированные из PDF-файла или электронного письма, по-прежнему читаются четко, а результат отображается обратно в виде текста.

Два варианта соответствуют варианту Adobe. «Разграничители Adobe» заключают вывод в маркеры <~ и ~>, ожидаемые PostScript; декодер удаляет эти маркеры, независимо от того, присутствуют они или нет, поэтому вы можете вставить заключенное в рамку или пустое значение. «Сокращать нулевые группы как z» выдает один z для любой четырехбайтовой группы, состоящей из всех нулей, что является стандартным сокращением — декодер всегда понимает z независимо от настройки.

Когда что-то не так, инструмент сообщает, что и где: символ, выходящий за пределы диапазона, получает имя с указанием его позиции, случайный z внутри группы помечается флажком, а вместо выдачи молчаливого мусора сообщается об усеченной конечной группе. Все работает в вашем браузере, поэтому ничего из того, что вы вставляете, никогда не загружается. Скопируйте результат или загрузите его в виде файла .txt.

FAQ

Чем Ascii85 отличается от Base64?
Оба преобразуют двоичный текст в печатный текст, но Ascii85 кодирует четыре байта как пять символов вместо трех байтов как четыре, поэтому он более компактен — примерно 25% накладных расходов против 33%. Он использует более широкий алфавит («!» — «u»), поэтому он появляется в PostScript, PDF и Git, а не в URL-адресах или заголовках электронных писем.
Что делают разделители Adobe?
PostScript и PDF заключают данные Ascii85 в <~ в начале и ~> в конце. Включите опцию, чтобы добавлять их при кодировании. При декодировании маркеры удаляются автоматически, независимо от того, присутствуют они на месте или нет, поэтому работают как обрамленные, так и пустые значения.
Что такое аббревиатура z?
Группа из четырех нулевых байтов будет кодироваться как пять восклицательных знаков; вариант Adobe сокращает его до одного z. Оставьте эту опцию включенной для стандартного вывода или выключенной, если строгому инструменту требуется полная !!!!! форма. Декодер всегда принимает z, но только вместо целой группы, а не в середине одной.
Почему декодирование говорит, что мои данные двоичные?
Ascii85 в PDF-файлах обычно оборачивает изображения или шрифты, которые являются необработанными двоичными, а не текстовыми. Если декодированные байты недействительны в формате UTF-8, инструмент сообщит вам об этом вместо печати символов замены. Текст, который вы закодировали самостоятельно, всегда будет аккуратно декодирован.
Мой текст где-нибудь загружен?
Нет. Кодирование и декодирование полностью выполняются в вашем браузере, и ваши данные никогда не покидают ваше устройство.