Codificação de comprimento de execução
Comprima caracteres repetidos em pares contagem-caractere e descodifique-os de novo.
Codificação de comprimento de execução
A codificação de comprimento de execução substitui caracteres repetidos por uma contagem e o caractere em si: "aaabcc" torna-se "3a1b2c" — três a's, um b, dois c's. Esta ferramenta codifica texto dessa maneira e descodifica-o novamente, inteiramente no seu navegador. É o mesmo princípio por trás da compressão de fax, da variante RLE do BMP e de formatos simples de recursos de jogo: dados repetitivos diminuem bastante, e texto sem repetição mal muda de tamanho.
Duas opções de formato controlam como cada sequência é escrita: contagem antes do caractere (3a) ou caractere antes da contagem (a3). Ativar "comprimir apenas sequências com mais de 1 caractere" deixa as ocorrências únicas sem codificar — "aaabcc" torna-se "3ab2c" em vez de "3a1b2c" — o que se lê mais perto de como RLE é ensinado, mas requer um separador se o texto também contiver dígitos. Um separador entre sequências (uma vírgula, um espaço, o que digitar) remove essa ambiguidade inteiramente e é essencial no modo bytes. "Processar linha por linha" evita que sequências atravessem quebras de linha, útil quando cada linha é realmente seu próprio registo.
O modo bytes trata a entrada como bytes hexadecimais em vez de caracteres de texto — cole hex como "00 00 00 ff" (espaços ignorados) e é agrupado e comprimido byte por byte, que é como RLE é realmente usado em dados binários, como linhas de imagem não comprimidas. Descodificar reflete cada opção: escolha o mesmo formato, separador e modo bytes usados para codificar, e o texto ou hex original volta exatamente igual. O contador em tempo real mostra o comprimento da entrada e saída mais a taxa de compressão, para ver num relance se uma entrada é uma boa candidata a compressão de comprimento de execução.
Tudo funciona localmente no seu navegador — nada do que cola é enviado para qualquer sítio. Copie o resultado, descarregue-o como ficheiro .txt, ou envie a saída diretamente para a entrada para mudar de direcção e verificar a operação completa.