Ir para o conteúdo
TextArray
Totalmente local

Codificação e decodificação Ascii85

Codifique o texto para Ascii85 (base85) e decodifique-o novamente, com delimitadores Adobe opcionais.

Entrada

Codificação e decodificação Ascii85

Ascii85, também chamado de base85, compacta dados binários em texto imprimível de maneira mais compacta do que Base64. Ele mapeia cada quatro bytes em cinco caracteres extraídos de "!" através de "u", de modo que a produção cresce apenas cerca de um quarto, em vez de um terço. Essa densidade é a razão pela qual a Adobe o incorporou em PostScript e PDF, onde agrupa imagens, fontes e fluxos incorporados, e por que aparece em patches binários do Git e nos próprios identificadores de objetos do Git.

Escolha uma direção e cole seu texto. A codificação pega os bytes UTF-8 da entrada e os converte grupo por grupo; um grupo parcial final de um a três bytes é preenchido e cortado exatamente como a especificação da Adobe exige, de modo que o comprimento sempre é de ida e volta. A decodificação inverte isso: espaços em branco e quebras de linha no valor colado são ignorados, de modo que os dados copiados de um PDF ou de um e-mail ainda são lidos corretamente e o resultado é mostrado novamente como texto.

Duas opções correspondem à variante Adobe. Os "delimitadores Adobe" envolvem a saída nos marcadores <~ e ~> que o PostScript espera; o decodificador remove esses marcadores, estejam eles presentes ou não, para que você possa colar um valor emoldurado ou simples. "Abreviar grupos de zero como z" emite um único z para qualquer grupo de quatro bytes totalmente zero, a abreviação padrão - o decodificador sempre entende z, independentemente da configuração.

Quando algo está errado, a ferramenta diz o que e onde: um caractere fora do intervalo é nomeado com sua posição, um z perdido dentro de um grupo é sinalizado e um grupo final truncado é relatado em vez de produzir lixo silencioso. Tudo é executado no seu navegador, então nada que você cola é carregado. Copie o resultado ou baixe-o como um arquivo .txt.

FAQ

Como o Ascii85 é diferente do Base64?
Ambos transformam binário em texto imprimível, mas o Ascii85 codifica quatro bytes como cinco caracteres em vez de três bytes como quatro, por isso é mais compacto – aproximadamente 25% de sobrecarga versus 33%. Ele usa um alfabeto mais amplo ("!" a "u"), e é por isso que aparece em PostScript, PDF e Git em vez de URLs ou cabeçalhos de e-mail.
O que os delimitadores da Adobe fazem?
PostScript e PDF agrupam dados Ascii85 em <~ no início e ~> no final. Ative a opção para adicioná-los durante a codificação. Ao decodificar, os marcadores são removidos automaticamente, estejam ou não lá, portanto, um valor emoldurado ou vazio funciona.
Qual é a abreviatura z?
Um grupo de quatro bytes zero seria codificado como cinco pontos de exclamação; a variante Adobe reduz para um único z. Deixe a opção ativada para saída padrão ou desativada se uma ferramenta estrita precisar do completo !!!!! forma. O decodificador sempre aceita z, mas apenas no lugar de um grupo inteiro, nunca no meio de um.
Por que a decodificação diz que meus dados são binários?
Ascii85 em PDFs geralmente envolve imagens ou fontes, que são binárias brutas, não texto. Se os bytes decodificados não forem UTF-8 válidos, a ferramenta informará em vez de imprimir caracteres de substituição. O texto que você mesmo codificou sempre será decodificado de forma limpa.
Meu texto é carregado em algum lugar?
Não. A codificação e a decodificação são executadas inteiramente no seu navegador e seus dados nunca saem do seu dispositivo.