Traduzir texto de foto
Extrai o texto de uma imagem — foto, digitalização ou print — e devolve a tradução no idioma que você escolher, em uma única chamada. Etiqueta de produto, documento fotografado ou placa: o que estiver legível na imagem vira texto traduzido. Serviço via API, pago por imagem, com preço publicado.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
Da foto direto para a tradução
O caminho tradicional tem três etapas manuais: digitar (ou passar OCR), colar num tradutor e reorganizar o resultado. Aqui as etapas viram uma: a imagem entra, um modelo de visão lê o texto — mesmo em foto de celular, com fundo e iluminação de mundo real — e um modelo de linguagem traduz respeitando o contexto do documento. Uma etiqueta de composição vira uma etiqueta de composição em português, não uma sopa de palavras soltas.
O que funciona bem (e o que atrapalha)
Funciona com foto de embalagem, página de manual, cartaz, print de aplicativo e documento digitalizado, nos alfabetos mais usados — latino, chinês, japonês, coreano, cirílico, árabe. O que atrapalha é o mesmo que atrapalharia um leitor humano: texto minúsculo demais na resolução da foto, borrão de movimento, reflexo em cima da letra. Manuscrito depende da caligrafia. Na dúvida, tire a foto de frente, com o texto ocupando boa parte do quadro.
Chamada, resposta e preço por imagem
Envie a imagem e o idioma de destino ao endpoint /translate/ocr; a API devolve um task_id e, na consulta seguinte, o texto traduzido. O preço é por uso, em dólares americanos: US$ 0,011 por chamada mais US$ 0,0705 por imagem — uma foto avulsa sai por cerca de US$ 0,08, e um lote de 100 imagens numa chamada fica em torno de US$ 7. Sem mensalidade e sem franquia: zero uso, zero custo.
Quando usar esta e não a tradução de texto
Se você já tem o texto selecionável (um PDF nativo, um e-mail, um arquivo), a tradução comum de texto é mais barata e direta. Esta capacidade existe para quando o texto está preso em pixels: fotos, digitalizações, prints e PDFs escaneados. É a ponte entre o papel fotografado com o celular e o conteúdo traduzido que você consegue editar, buscar e reaproveitar.
Casos de uso
Embalagem do fornecedor asiático
Um importador recebe amostras com rótulos em chinês. Fotografa cada embalagem e manda o lote pela API: composição, instruções e avisos voltam em português, prontos para a análise de conformidade antes de fechar o pedido — sem depender de digitação de ideogramas.
Documento em espanhol chegando pelo WhatsApp
Um despachante em São Paulo recebe do cliente a foto de um documento argentino pelo WhatsApp. Em vez de pedir o arquivo original, sobe a própria foto e recebe a tradução em minutos — o suficiente para conferir os dados e seguir com o processo.
Manual que só existe em papel
A manutenção de uma indústria herda o manual alemão de uma máquina antiga, sem versão digital. Fotografam as 40 páginas com o celular e traduzem o lote inteiro por cerca de US$ 2,80 — o custo de digitar e traduzir na mão nem se compara.
Prints de app estrangeiro no suporte
O suporte da TecnoSul Soluções Digitais ME recebe prints de erro de um sistema parceiro em japonês. Cada print passa pela API e o atendente lê a mensagem de erro em português — o chamado anda sem esperar alguém do outro fuso traduzir.
Perguntas frequentes
A foto precisa ser perfeita? E se estiver torta ou com sombra?
Não precisa ser de estúdio: inclinação leve, fundo aparecendo e iluminação irregular são o cenário normal e o modelo lida bem com isso. O que compromete é ilegibilidade real — borrão forte, reflexo em cima do texto, letra pequena demais para a resolução. Se um humano ampliando a foto não lê, o modelo também não.
Lê manuscrito, tipo um bilhete ou uma ficha preenchida à mão?
Depende da caligrafia, como para qualquer leitor. Letra de forma razoavelmente clara costuma sair bem; letra cursiva apertada é loteria. Para documentos manuscritos importantes, trate o resultado como rascunho a conferir, não como versão final.
De quais idiomas ela consegue traduzir?
Dos idiomas de maior circulação comercial — inclusive os de alfabeto não latino, como chinês, japonês, coreano, russo e árabe, que são justamente os casos em que digitar o texto para traduzir é inviável. O destino pode ser português ou outro idioma que você indicar.
Traduzir 100 fotos custa quanto, no total?
Em uma única chamada: US$ 0,011 de base mais 100 × US$ 0,0705, aproximadamente US$ 7,06. O valor é em dólares americanos e não existe cobrança recorrente — você paga esse lote e mais nada.
Como pago se não tem cadastro? E se eu precisar de ajuda?
A compra é direta, sem criar conta: o pagamento é via PayPal (Pix por enquanto não temos). Qualquer dúvida — antes ou depois de pagar — é respondida por uma pessoa de verdade em espanhol ou inglês; escreva em português mesmo, que a gente se entende.
As fotos que eu envio ficam guardadas?
As imagens são recebidas para processar a sua tarefa e devolver a tradução — esse é o uso. Não viram acervo público nem material de demonstração. Se a foto contém documento de terceiros, envie apenas o trecho necessário: é a prática que a LGPD espera de quem trata dado alheio.
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/translate/ocr \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"image":"https://ejemplo.com/imagen.jpg"}'const res = await fetch("https://api.kit.forhosting.com/translate/ocr", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"image": "https://ejemplo.com/imagen.jpg"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/translate/ocr",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"image": "https://ejemplo.com/imagen.jpg"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/translate/ocr", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"image":"https://ejemplo.com/imagen.jpg"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"image":"https://ejemplo.com/imagen.jpg"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/translate/ocr", 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
{
"image": "https://ejemplo.com/imagen.jpg"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "translate.ocr",
"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_tokens | 20000 |
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. |
422 | task_failed | A tarefa falhou do nosso lado. Você não paga nada por ela. |