Normalizador Unicode (NFC, NFD, NFKC, NFKD)
O mesmo texto visível pode ser armazenado como sequências de pontos de código diferentes — é pode ser um caractere pré-composto (U+00E9) ou 'e' mais um acento combinante (U+0065 U+0301). A normalização Unicode reescreve o texto em uma forma canônica para que strings visualmente iguais sejam comparadas como iguais, ordenem de forma previsível e sobrevivam à passagem por sistemas de arquivos e bancos de dados. NFC compõe na forma pré-composta mais curta (o melhor padrão para armazenamento e a web); NFD decompõe totalmente (comum em nomes de arquivo do macOS); NFKC e NFKD aplicam ainda mapeamentos de compatibilidade, dobrando ligaduras (fi → fi), caracteres de largura total (2024 → 2024) e formas como numerais romanos (Ⅻ → XII). Opcionalmente remova marcas combinantes para eliminar acentos por completo. A tabela de comparação mostra o comprimento em pontos de código e bytes UTF-8 de cada forma e sinaliza com qual sua entrada já coincide — útil para detectar dados NFD onde você esperava NFC. Tudo roda localmente; seu texto nunca sai do navegador.
Saída normalizada · 17 caracteres · 32 bytes
Café file 2024 Ⅻ ①
A entrada já está em NFC.
Comparação de todas as formas
| Forma | caracteres | bytes | = entrada? |
|---|---|---|---|
| NFC | 17 | 32 | sim |
| NFD | 18 | 33 | não |
| NFKC | 20 | 21 | não |
| NFKD | 21 | 22 | não |
NFC é o padrão mais seguro para armazenamento e a web. NFKC/NFKD e remover diacríticos têm perda — não use em texto que deva ficar exato.
Como usar
- Cole ou digite texto na caixa de entrada.
- Escolha uma forma alvo (NFC, NFD, NFKC, NFKD) e copie a saída normalizada.
- Ative 'Remover diacríticos' para também tirar acentos, e leia a tabela para ver em qual forma sua entrada já está.
Perguntas frequentes
- Qual forma devo usar?
- NFC é o padrão mais seguro para armazenamento, transporte e a web — é a forma canônica mais curta e a que a maioria dos sistemas espera. Use NFD quando um sistema exigir texto decomposto (ex.: alguns contextos do macOS). Use NFKC/NFKD apenas quando quiser deliberadamente o dobramento de compatibilidade (ligaduras, largura total, super/subscritos colapsados), pois são transformações com perda.
- O que 'remover diacríticos' faz?
- Decompõe o texto (NFD), remove todas as marcas combinantes e então renormaliza para a forma escolhida — assim 'café' vira 'cafe' e 'Crème Brûlée' vira 'Creme Brulee'. É útil para criar slugs ASCII ou chaves de busca sem acento, mas muda o significado em muitos idiomas, então não use em texto que precise manter correto.
- Por que as contagens de bytes diferem entre formas?
- Formas decompostas (NFD/NFKD) costumam usar mais pontos de código — um 'é' pré-composto é um caractere de 2 bytes em UTF-8, enquanto 'e' + acento combinante são dois caracteres somando 3 bytes. Formas de compatibilidade podem ir para qualquer lado. A tabela permite comparar comprimentos exatos.
- A normalização é reversível?
- NFC ↔ NFD preserva informação e é reversível para a equivalência canônica. NFKC/NFKD não são reversíveis — uma vez dobrada uma ligadura ou um dígito de largura total, a distinção original se perde. Remover diacríticos também é de mão única.
Guias sobre este tema
Ferramentas relacionadas
Remover Quebras de Linha
Junte linhas quebradas em um texto limpo e contínuo — remova as quebras de linha forçadas ao copiar de PDFs ou e-mails, mantendo os parágrafos reais.
HTML pra Texto Plano
Tira tags HTML de um snippet e fica só com o texto — mantém quebras de linha de bloco, descarta `<script>` e `<style>`, decodifica entidades.
Formatador de Telefone (E.164 / Internacional / Nacional)
Normalize input bagunçado para E.164 (`+15551234567`), internacional (`+1 555 123 4567`), nacional e URI tel:.
Tradutor de Braille (texto ↔ Braille)
Traduza texto para Braille Unicode (grau 1) e decodifique Braille de volta para texto, com sinais de maiúscula e número, no seu navegador.
Inspetor de Caracteres Unicode
Quebre uma string em caracteres e mostre codepoint, bytes UTF-8, entidade HTML, escape CSS e bloco Unicode de cada um.
Gerador de Sobrescrito e Subscrito
Digite texto plano e obtenha variantes Unicode de sobrescrito (²) e subscrito (₂) — cole em chat, docs ou onde fontes não te ajudam.