Conversor de texto Unicode
Hello vira 𝐇𝐞𝐥𝐥𝐨 em negrito Unicode. Transforme texto simples em letras em negrito, itálico ou monoespaçadas que colam como caracteres comuns em uma bio, um apelido de chat, o título de uma live ou uma célula sem formatação. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Texto
- Hello
- Resultado
- 𝐇𝐞𝐥𝐥𝐨
- Estilo
- Bold
- Quantidade mapeada
- 5
- Caracteres sem conversão
- 0
Texto Unicode estilizado é o que as pessoas usam quando um canal aceita caracteres comuns, mas não HTML, Markdown nem uma webfont própria. Uma legenda social, um apelido de chat, uma célula de planilha ou um ticket de suporte podem mostrar letras com cara de negrito, itálico ou monoespaçado se essas letras forem os Mathematical Alphanumeric Symbols oficiais, e não um arquivo de fonte. Este conversor recebe uma string de texto simples não vazia, aplica um de três estilos — bold, italic ou monospace — e devolve a string convertida para você colar onde texto geral é permitido. Letras latinas sempre mapeiam; dígitos mapeiam em negrito e monoespaçado e passam no itálico porque o padrão não define um intervalo de dígitos itálicos. Espaços e pontuação do dia a dia ficam no lugar, então uma frase continua uma frase.
Como funciona o mapeamento Unicode em negrito, itálico e monoespaçado
O padrão Unicode reserva um bloco dedicado, Mathematical Alphanumeric Symbols, para letras que precisam manter um tipo mesmo quando o documento ao redor não consegue carregar uma fonte. Três dessas faces coincidem com a busca cotidiana por texto Unicode estilizado: Mathematical Bold, Mathematical Italic e Mathematical Monospace. Maiúsculas em negrito ocupam U+1D400 até U+1D419, minúsculas em negrito ocupam U+1D41A até U+1D433 e dígitos em negrito ocupam U+1D7CE até U+1D7D7.
Maiúsculas itálicas ocupam U+1D434 até U+1D44D e minúsculas itálicas ocupam U+1D44E até U+1D467, com um furo oficial: o h minúsculo itálico não está no ponto de código hipotético U+1D455, que fica reservado, então o conversor usa U+210E PLANCK CONSTANT, o glifo que o padrão indica para um h itálico. Dígitos itálicos não existem nesse bloco, portanto dígitos ASCII passam inalterados quando style é italic. Maiúsculas monoespaçadas ocupam U+1D670 até U+1D689, minúsculas ocupam U+1D68A até U+1D6A3 e dígitos ocupam U+1D7F6 até U+1D7FF.
A conversão percorre a string por valor escalar Unicode com codePointAt, não por unidade UTF-16, porque as letras estilizadas vivem fora do Basic Multilingual Plane e um laço ingênuo com charAt partiria pares substitutos. Espaços, tabulações, quebras de linha e pontuação ASCII comum permanecem como estão, de forma que Hello, World! continua um cumprimento depois da conversão.
Qualquer outro símbolo — emoji, letras acentuadas ou caracteres já tomados de outro alfabeto matemático — é mantido no resultado e listado uma vez em unmapped, na ordem de primeira aparição, para que entrada mista nunca desapareça.
Onde um conversor de texto Unicode se paga
Criadores que querem ênfase em lugares que removem HTML ainda precisam de algo que pareça negrito ou itálico numa bio, num título de livestream ou num selo de produto, e os Mathematical Alphanumeric Symbols copiam como texto comum na maioria dos dispositivos modernos. Desenvolvedores que geram nomes de exibição, códigos de cupom ou rótulos com cara de terminal podem escolher monoespaçado sem enviar webfont nem desenhar num canvas.
Equipes de comunidade colam strings estilizadas em campanhas e depois precisam de um mapeamento documentado para que filtros de moderação raciocinem quais letras foram transformadas em vez de tratar o resultado como ruído. Mesas de suporte recebem tickets cheios de letras ornamentadas e precisam do relatório unmapped quando o usuário misturou emoji, letras circuladas ou outro alfabeto matemático que este conversor deliberadamente não reescreve.
Mantenha as solicitações dentro do limite de comprimento publicado, fixe o resultado convertido nos testes e você obtém texto estilizado reproduzível para legendas, editores de perfil e workers de borda sem montar um renderizador de fontes próprio.
Casos de uso
Legendas sociais e nomes de exibição
Transforme uma frase simples em Unicode negrito ou itálico para bios, títulos de stream e apelidos de chat que não carregam webfont nem conservam HTML.
Rótulos e códigos monoespaçados
Estilize SKUs, códigos de convite e trechos com cara de terminal como Mathematical Monospace para colar em planilhas e tickets como texto copiável.
Perguntas frequentes
Como converter texto simples em Unicode negrito, itálico ou monoespaçado?
Envie uma string não vazia em text e defina style como bold, italic ou monospace (bold é o padrão).
O que acontece se text estiver vazio ou não for uma string?
O contrato exige uma string não vazia; valores vazios e tipos que não são string não são convertidos e não são cobrados.
Os dígitos mudam em todos os estilos?
Negrito e monoespaçado mapeiam os dígitos 0–9 para seus intervalos Mathematical de dígitos. O itálico não tem intervalo de dígitos no Unicode, então dígitos ASCII passam inalterados no modo italic.
Por que o h itálico parece diferente na tabela de pontos de código?
O Unicode deixa U+1D455 reservado. O conversor segue o padrão e usa U+210E PLANCK CONSTANT para o h minúsculo itálico, para que o glifo ainda se leia como h itálico.
O que acontece com letras acentuadas e emojis?
Eles ficam no resultado exatamente como você digitou e aparecem uma vez na lista de não convertidos, na ordem em que surgem, então nada some de uma frase mista. Por isso o ã ou o ç não mudam de estilo.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/conv/unicode-text \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello"}'const res = await fetch("https://api.kit.forhosting.com/conv/unicode-text", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/conv/unicode-text",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/conv/unicode-text", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/conv/unicode-text", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"text": "Hello"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "conv.unicode_text",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_chars | 65536 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Entrada vazia e valores que não são string falham com invalid_input em vez de um branco silencioso. O caminho gratuito do navegador e a API compartilham uma função determinística, assim a prévia que você copia aqui é o mesmo payload que um script armazena.
Como funciona o mapeamento Unicode em negrito, itálico e monoespaçado
A tabela é fechada: sem rede, sem relógio e sem aleatoriedade, o que significa que a mesma entrada sempre produz o mesmo JSON.
Contrato de entrada, forma da resposta e erros
Quando style é omitido, bold é o padrão e um único campo ainda produz uma string convertida útil. Um valor de style não suportado falha do mesmo jeito e nomeia o conjunto permitido. Quando existe ao menos um caractere não mapeado, a resposta inclui um array unmapped com esses caracteres únicos; quando tudo mapeou ou passou limpo, esse campo é omitido em vez de null. Verificações clássicas incluem converter Hello em negrito, converter The em itálico para exercitar o h de PLANCK CONSTANT e converter uma frase mista com dígitos em monoespaçado. Envie por POST um objeto JSON com um campo de string não vazio obrigatório chamado text e um style opcional com valor bold, italic ou monospace. Aliases como input, value, data e s são aceitos para text; variant, kind e font alias de style. O comprimento é limitado a um máximo documentado de caracteres escalares para que um colar descontrolado não esgote um isolate; entrada grande demais também é invalid_input. Em sucesso o corpo ecoa text e style, devolve result como a string convertida que você realmente cola, informa mapped_count dos caracteres que mudaram, passthrough_count de espaços, pontuação e dígitos itálicos que ficaram, unmapped_count de símbolos residuais distintos, length como contagem escalar de result e script como rótulo estável do perfil Mathematical Bold, Italic ou Monospace. Chamadas API bem-sucedidas cobram a base publicada de US$ 0,002 por item; falhas de validação não consomem saldo pré-pago.
Onde um conversor de texto Unicode se paga
Como a implementação é parse pura de nível A, cada chamada bem-sucedida custa a base publicada US$ 0,002 sem tokens de modelo e sem rede de saída, e validação falha nunca gasta saldo.
Casos de integração
Fixtures de campanha e moderação
Gere uma string convertida documentada para testes e recupere quais letras mapearam, listando os símbolos unmapped sobrados de um colar misto.
Perguntas técnicas
Quanto custa o conversor de texto Unicode?
A ferramenta do navegador é grátis. Solicitações API usam saldo pré-pago KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.