Formatação Base64
Formate Base64 online grátis com largura personalizável (64/76/80/100) e indentação (0/2/4 espaços). Ajusta apenas a exibição, sem alterar a codificação original.
Sugestões Relacionadas
O que é formatação Base64?
A formatação Base64 consiste em dividir visualmente uma string Base64 longa em várias linhas com largura de caracteres definida (como 64/76/80/100), com opção de indentação de 0/2/4 espaços. O resultado é mais legível, adequado para captura de tela, impressão e layout em documentos, mas **não altera o conteúdo bruto original** — basta remover todas as quebras de linha e indentação para restaurar a string Base64 original em uma única linha.
**Por que formatar?** O padrão RFC 4648 não impõe quebras de linha no Base64, mas na prática: ① strings Base64 longas em sistemas de tickets, chats e documentos Markdown causam rolagem horizontal; ② o protocolo MIME (RFC 2045) define quebra a cada 76 caracteres (para anexos de e-mail); ③ a exibição em múltiplas linhas facilita a localização de caracteres anômalos em revisão de código; ④ o layout para captura de tela em documentos precisa de alinhamento visual.
**Cenários comuns de uso:** ① layout em documentação técnica: incorporar Base64 longo em Markdown / Confluence / Notion; ② comparação por captura de tela: facilitar a visualização da string Base64 completa em PRs e relatórios de bug; ③ revisão manual: localizar rapidamente caracteres ilegítimos em Code Review (como quebras de linha ou espaços misturados); ④ anexos de e-mail: quebrar a cada 76 caracteres conforme o padrão MIME para transporte SMTP; ⑤ exibição de logs em telas grandes: mostrar em várias linhas em painéis de monitoramento.
**Diferença para MIME Base64:** O MIME Base64 (RFC 2045) define quebra fixa a cada 76 caracteres, sendo uma exigência de protocolo. A formatação desta ferramenta é mais flexível, suportando larguras de 64/76/80/100 caracteres com indentação de 0/2/4 espaços, ideal para diversos cenários de documentação. A quebra MIME pode ser reproduzida selecionando a largura de 76 caracteres.
**Segurança da formatação:** A ferramenta apenas insere quebras de linha e indentação na exibição, **sem alterar o conteúdo bruto do Base64**. Ao remover todos os espaços em branco, o resultado formatado volta a ser exatamente a mesma string Base64 original. Como a maioria dos decodificadores ignora espaços em branco, o resultado formatado pode ser decodificado diretamente.
Casos de uso
- Dividir strings Base64 muito longas por largura personalizada para facilitar a leitura e captura de tela
- Formatar Base64 para documentação técnica, registros de tickets ou exibição em e-mails
- Otimização de layout Base64 para impressão ou arquivamento
- Ajustar a estrutura do Base64 em conjunto com ferramentas de divisão e mesclagem
- Quebrar Base64 no padrão MIME (76 caracteres) para anexos de e-mail
- Exibir Base64 em várias linhas durante revisão de código para localizar caracteres anômalos
- Incorporar Base64 em Markdown com indentação de 4 espaços para manter o estilo de código
- Exibição de logs em telas grandes: mostrar payloads Base64 longos em várias linhas em painéis de monitoramento
Como Usar
- Cole a string Base64 que deseja formatar (pode conter ou não quebras de linha)
- Escolha a largura de caracteres por linha: 64 / 76 / 80 / 100
- Escolha a indentação: 0 / 2 / 4 espaços
- A ferramenta formata e exibe em tempo real conforme a largura e indentação escolhidas
- Copie o resultado formatado para uso em documentos, ou clique em restaurar para remover as quebras
Recursos
- Largura de caracteres personalizável: suporta 64 / 76 / 80 / 100 caracteres por linha, adaptando-se a diferentes necessidades de layout
- Indentação configurável: suporta indentação de 0 / 2 / 4 espaços, facilitando o alinhamento em blocos de código ou Markdown
- Otimização apenas visual: ajusta apenas a exibição, sem alterar os dados de codificação Base64 originais
- Formatação em tempo real: debounce de 200ms, formata conforme você digita, sem atrasos
- Restauração com um clique: remove todas as quebras de linha e indentação, retornando ao Base64 em uma única linha
- Estatísticas de caracteres e linhas: exibe em tempo real o número de caracteres de entrada e o total de linhas de saída
- Copiar com um clique: o resultado formatado pode ser copiado diretamente para a área de transferência, para uso em documentos ou tickets
- Processamento 100% local no navegador: toda a formatação é feita no navegador, sem envio a nenhum servidor
Exemplos de Código
JavaScript: Implementação manual da formatação Base64 (entendendo o princípio)
javascriptEntenda a lógica da formatação Base64 — dividir pela largura de caracteres e inserir quebras de linha.
// Base64 格式化函数(与本工具逻辑一致)
function formatBase64(input, lineLength = 76, indent = 0) {
// 1. 去除所有空白字符
const clean = input.replace(/\s/g, '');
if (!clean) return '';
// 2. 按指定宽度切分
const lines = [];
for (let i = 0; i < clean.length; i += lineLength) {
const line = clean.slice(i, i + lineLength);
lines.push(' '.repeat(indent) + line);
}
// 3. 用换行符连接
return lines.join('\n');
}
// 使用示例
const b64 = 'a'.repeat(200);
console.log(formatBase64(b64, 76, 0));
// 输出:每行 76 字符的 Base64
// 去格式化(用于解码或传输)
function unformatBase64(input) {
return input.replace(/\s/g, '');
}
console.log(unformatBase64(formatBase64(b64, 76, 0)).length); // 200Python: Formatação Base64 + quebra MIME
pythonImplementação em Python para quebra a cada 76 caracteres (padrão MIME) com indentação opcional.
import textwrap
def format_base64(b64_str: str, width: int = 76, indent: int = 0) -> str:
"""格式化 Base64 字符串为多行"""
# 去除所有空白
clean = ''.join(b64_str.split())
if not clean:
return ''
# 使用 textwrap 按宽度切分
lines = textwrap.wrap(clean, width=width)
# 添加缩进
if indent > 0:
lines = [' ' * indent + line for line in lines]
return '\n'.join(lines)
# 使用示例
b64 = 'aGVsbG8gd29ybGQ=' * 10
print(format_base64(b64, 76, 0))
# 复现 MIME Base64 (RFC 2045)
mime_format = format_base64(b64, 76)
print(f'MIME Base64 行数: {len(mime_format.splitlines())}')
# 还原为单行
single_line = b64.replace('\n', '').replace(' ', '')
print(f'单行长度: {len(single_line)}')Linha de comando: ferramenta fold + quebra MIME Base64
bashA ferramenta fold, disponível nativamente em Linux/macOS, permite formatar Base64 rapidamente pelo terminal.
# 1. 输入 Base64 → 按 76 字符折行(MIME 标准)
echo "aGVsbG8gd29ybGQ=" | base64 | base64 | fold -w 76
# 2. 格式化长 Base64 文件 → 输出到新文件
fold -w 76 encoded.txt > formatted.txt
# 3. 按 64 字符折行(紧凑展示)
fold -w 64 encoded.txt > compact.txt
# 4. 同时去除所有换行(去格式化)
tr -d '\n' < formatted.txt > single-line.txt
# 5. 验证:Base64 长度 + 行数
wc -c encoded.txt | awk '{print "字符数:", $1}'
wc -l formatted.txt | awk '{print "行数:", $1}'
# 6. 结合 openssl 实现完整 base64 编码 + 格式化
echo "Hello 世界" | openssl base64 -A | fold -w 76 > hello.b64.txt
cat hello.b64.txtPerguntas frequentes
A formatação altera o conteúdo real do Base64?
Não. A formatação apenas insere quebras de linha e espaços de indentação na exibição, sem alterar a codificação em si. Removendo todos os caracteres em branco do conteúdo formatado, você obtém a string Base64 original em uma única linha. Todos os decodificadores Base64 (atob nativo do navegador, Buffer do Node.js, base64 do Python) ignoram automaticamente caracteres em branco, então o resultado formatado pode ser decodificado diretamente.
Qual a diferença entre formatação Base64 e MIME Base64?
O MIME Base64 segue rigorosamente a quebra a cada 76 caracteres da RFC 2045, sendo o padrão para transporte de anexos de e-mail. A formatação desta ferramenta é mais flexível, permitindo larguras personalizadas de 64/76/80/100 caracteres com indentação de 0/2/4 espaços, mais adequada para documentos, capturas de tela e diferentes necessidades de exibição. Basta selecionar a largura de 76 caracteres para reproduzir a quebra MIME.
É adequado para visualização de logs e registro de tickets?
É muito adequado. Strings Base64 longas em sistemas de tickets (Jira, Zendesk), ferramentas de chat (Slack, Teams) ou documentos Markdown costumam causar rolagem horizontal. Com a formatação em várias linhas, o conteúdo fica claro e legível, podendo ser colado diretamente em anexos de tickets ou janelas de chat.
O resultado formatado pode ser decodificado diretamente?
Sim. Todos os principais decodificadores Base64 ignoram automaticamente quebras de linha e espaços. Se houver problemas (como em versões antigas do OpenSSL), basta clicar no botão "Restaurar" para remover as quebras antes de decodificar.
Por que existem várias larguras como 64 / 76 / 80 / 100?
64 caracteres é ideal para documentos compactos (como terminais CLI, tabelas Markdown); 76 caracteres é o padrão para e-mails MIME; 80 caracteres é a largura tradicional de terminais; 100 caracteres é adequado para editores modernos e telas largas. Cada largura tem um cenário de uso ideal.
Para que serve a indentação?
A indentação (0/2/4 espaços) mantém o Base64 alinhado em blocos de código ou Markdown: 0 espaços é ideal para texto puro, 2 espaços combina com o estilo de código JS/Python, 4 espaços é adequado para blocos de código aninhados em Markdown.
A formatação aumenta o número de caracteres do Base64?
Aumenta cerca de 1-3% (quebras de linha + espaços de indentação), mas isso não afeta a decodificação. Se o transporte for sensível ao tamanho (como parâmetros de URL), recomendamos usar primeiro a função "Restaurar" para voltar à versão em uma única linha.
Suporta UTF-8 / caracteres acentuados?
Esta ferramenta não processa charset diretamente — ela formata apenas a própria string Base64. Se o Base64 contiver caracteres acentuados (por exemplo, Base64 de uma string UTF-8 codificada), a formatação não afeta a correção da codificação.
É adequado para formatar arquivos grandes?
Sim, é compatível. A ferramenta formata em tempo real, e o navegador lida bem com strings Base64 de até 1 MB. Acima de 10 MB pode haver lentidão na interface, então recomendamos formatar em blocos.
Após a formatação o体积 aumenta, é possível comprimir?
A formatação adiciona apenas quebras de linha e indentação, o que é favorável para algoritmos de compressão. Você pode usar gzip / Brotli, ou usar a ferramenta Base64 Stats para verificar o aumento exato.
Solução de Problemas
Alguns caracteres Base64 somem após a formatação
É possível que o Base64 original contenha caracteres ilegítimos (como quebras de linha mal processadas). Limpe primeiro com a ferramenta Base64 Clean e só depois formate.
O resultado formatado difere do conteúdo original em bytes
Isso é impossível — a formatação apenas insere caracteres em branco, sem alterar o conteúdo em bytes. Se houver diferença, significa que o Base64 original foi processado incorretamente (por exemplo, formatação repetida causando inserção duplicada de espaços em branco).
A interface trava após formatar uma string muito longa
Strings Base64 acima de 10 MB podem causar lentidão no navegador. Recomendamos: ① processar em blocos; ② usar base64-clean primeiro para remover espaços desnecessários; ③ reduzir a largura (por exemplo, 64 caracteres) para diminuir a carga de renderização por linha.
Glossário
- Formatação Base64
- Divisão visual de uma string Base64 em várias linhas com largura definida, afetando apenas a apresentação, sem alterar a codificação em si.
- MIME Base64
- Variante do Base64 com quebra a cada 76 caracteres definida pela RFC 2045, usada principalmente em anexos de e-mail.
- Largura de linha (line length)
- Número de caracteres Base64 por linha. Valores comuns: 64 (compacto), 76 (padrão MIME), 80 (impressão tradicional), 100 (telas largas).
- Indentação (indent)
- Número de espaços no início de cada linha. Valores comuns: 0 (sem indentação), 2 (estilo de código), 4 (bloco de código Markdown).
- Caracteres em branco (whitespace)
- Espaços, tabs e quebras de linha que podem estar presentes na string Base64. A formatação remove esses caracteres primeiro e depois os reinsere conforme a largura definida.
- Desformatar (unformat)
- Restaurar um Base64 formatado (várias linhas + indentação) para uma única linha sem espaços em branco, para decodificação ou transporte.
Tabela comparativa das 4 larguras de caracteres
Diferentes larguras de caracteres são adequadas para diferentes cenários de exibição, escolha conforme o ambiente de destino.
| Largura | Cenário típico | Padrão correspondente | Exemplo de uso |
|---|---|---|---|
64 caracteres | Terminal CLI, tabelas Markdown | Exibição compacta | Telas pequenas / alta densidade |
76 caracteres | Transporte de anexos de e-mail | RFC 2045 MIME | E-mail / SMTP |
80 caracteres | Impressão em terminais tradicionais | Terminal Unix tradicional | Impressão de documentos |
100 caracteres | Editores modernos / telas largas | Normas de UI modernas | IDE / documentação |
Tabela comparativa dos 3 estilos de indentação
Diferentes estilos de indentação combinam com diferentes convenções de código; escolha conforme o hábito da equipe ou do projeto.
| Indentação | Estilo de código | Exemplo (1ª linha do Base64) |
|---|---|---|
0 espaços | Sem indentação (texto puro) | QUJD... |
2 espaços | Convenção JS / Python | QUJD... |
4 espaços | Markdown aninhado / convenção Java | QUJD... |
Authoritative References
- Comparação Segura de Strings
- Conversão Binária
- Cifra de César
- Código Morse
- Codificação/Decodificação Hexadecimal
- Vídeo para Base64
- Base64 para Vídeo
- Imagem para Base64
- Base64 para Imagem
- Texto para Base64
- Base64 para Texto
- Verificador de hash de arquivo
- Arquivo para Base64
- Base64 para Arquivo
- Áudio para Base64
- Base64 para Áudio
- Criptografar e descriptografar AES
- Criptografia DES
- Codificador e Decodificador Base32
- Codificar e decodificar Base58
- Codificação Base64
- Decodificação Base64
- Comparação Base64
- Dividir Base64
- Mesclar Base64 em várias linhas
- Formatação Base64
- Verificação de Formato Base64
- Codificação Base64 em lote
- Decodificação Base64 em Lote
- Limpeza de Base64
- Preenchimento Base64
- Estatísticas Base64
- Base64 para Hexadecimal
- Conversor Base64 DataURL
- Conversor Base64-Hex
- Codificador Base85
- Gerador e Verificador HMAC
- Derivação de Chave PBKDF2
- Hash MD5
- Hash SHA-256
- Hash SHA1
- Hash SHA512
- Ferramenta JWT
- Codificação e Decodificação HTML
- Escape Unicode
- Codificação URL
- Base64 URL Safe
- MIME Base64
- Ofuscador Java
- Ofuscador JS
- Ofuscador PHP
- Ofuscação Python