Converta imagem em texto
no navegador
Solte um print, uma foto do celular, um scan ou um PDF de uma página e copie o texto em segundos. Português, inglês e mais 23 idiomas. O motor de reconhecimento roda dentro do seu navegador — o arquivo não vai pro nosso servidor.
Confira você mesmo: abra o DevTools, na aba Network solte um arquivo — nenhuma requisição vai sair carregando sua imagem.
Três passos.
Solte sua imagem
JPG, PNG, WebP, HEIC de iPhone, ou um PDF de uma página. O arquivo abre no navegador e fica ali. Da primeira vez que você usa a ferramenta, o motor de reconhecimento (cerca de 10 MB) baixa pro seu navegador e fica em cache — toda execução depois começa na hora e funciona offline.
Espera alguns segundos enquanto o motor lê
O Tesseract.js — porte open-source em WebAssembly do motor OCR Tesseract, mantido pelo Google — roda inteiro dentro do seu navegador. Um scan A4 limpo termina em 3–8 segundos num notebook moderno; uma foto de comprovante ou de uma placa geralmente sai em menos de 4 segundos. A barra de progresso mostra tanto o aquecimento do motor quanto o reconhecimento da página.
Copie o texto ou baixe .txt
O resultado aparece numa caixa de texto puro com uma pontuação de confiança. Copie pra área de transferência ou baixe como .txt em UTF-8. Tudo que rodou — o núcleo WASM, o modelo de idioma, o reconhecimento em si — aconteceu no seu aparelho. Nenhum arquivo, nenhum texto reconhecido e nenhum metadado chegou no nosso servidor.
O que OCR realmente faz
OCR (Optical Character Recognition, ou reconhecimento óptico de caracteres) é o processo de transformar pixels que parecem letras em texto que o computador entende. Uma foto de um comprovante de PIX ou um scan de um holerite são só pontos coloridos pra máquina até um modelo treinado em milhões de caracteres impressos mapear cada conjunto de pontos de volta pra a, b, 9, =. O motor que essa ferramenta usa é o Tesseract, o mesmo que aparece no Internet Archive pra digitalizar livros, no Google Drive pra ler imagens automaticamente, e na maioria dos leitores PDF open-source — só que aqui compilado pra WebAssembly pra rodar no seu navegador em vez de num servidor de outra pessoa.
O que você pode soltar
JPG, PNG, WebP, HEIC (do iPhone) e PDF de uma página. O HEIC é decodificado dentro do navegador — sem passo separado de conversão. PDF de várias páginas: só a primeira é processada; se precisa de todas, primeiro divide com o split-pdf e roda cada uma. Foto tirada direto do celular funciona; print de tela, scan de scanner de mesa e captura de tela também. O limite prático é 25 MB por arquivo — acima disso o navegador começa a sofrer pra manter o canvas e a memória do WASM ao mesmo tempo.
O que conta como boa entrada
A qualidade do OCR depende muito mais da imagem do que do motor. Um scan de scanner de mesa em 300 DPI de uma página datilografada chega em 98–99% de acerto sem ajuste nenhum. Uma foto nítida de um comprovante sob luz decente: 95%+. Uma foto borrada de um contrato tirada de lado em luz fraca: 60–80%, e o resultado vai precisar de revisão. Três coisas movem a precisão mais que tudo: nitidez (foca a câmera antes de clicar), contraste (recibo de cafeteria branco-no-preto é mais difícil que preto-no-branco) e orientação (o motor lida com pequenas inclinações, mas imagem deitada precisa ser girada antes). Se você tá digitalizando RG, CPF, holerite ou contrato e a precisão importa, vale usar primeiro um app de scanner — o Notas do iPhone, o Google Drive ou o Adobe Scan corrigem perspectiva e contraste antes de salvar.
Idiomas
A v1 vem com 25 idiomas — um por locale da Vastiko mais chinês simplificado pra usuários do continente. Latim: inglês, alemão, francês, espanhol, italiano, português (cobre brasileiro também), polonês, holandês, dinamarquês, sueco, romeno, húngaro, tcheco, turco, indonésio, vietnamita. Cirílico: russo, ucraniano. Grego. Árabe (da direita pra esquerda). Tailandês. CJK: japonês, coreano, chinês simplificado (continente), chinês tradicional (Taiwan/Hong Kong).
A ferramenta tenta acertar o idioma pelo locale do navegador na primeira vez — um navegador em pt-BR abre com português pré-selecionado, um navegador em russo abre com russo, e assim por diante. Você pode trocar a qualquer momento pela barra de cima; sua última escolha fica salva entre sessões. Cada pacote de idioma baixa só na primeira vez (de 1 a 6 MB dependendo do alfabeto — alfabetos latinos comprimem melhor que CJK) e fica em cache no navegador. Trocar idioma é um download único por idioma; os usos depois são instantâneos.
Documentos brasileiros em condições reais raramente são 100% português. Um contrato menciona Excel, PDF e WhatsApp. Um holerite traz holerite e contracheque em português junto com siglas como INSS, FGTS e IRRF. Por isso, escolher qualquer idioma que não seja inglês como primário carrega automaticamente o inglês como alfabeto secundário no mesmo passo de reconhecimento — o motor então considera os dois alfabetos e escolhe a leitura com maior confiança por palavra. Custo: cerca de 2× a memória e ~30% mais lento que pacote único, valendo a pena porque a alternativa é nome de marca em inglês saindo embolado no meio do português.
O que essa ferramenta não faz bem
Escrita à mão. O Tesseract foi treinado em texto impresso. Letra cursiva, receita médica manuscrita, anotações de caderno — esses pedem outro tipo de modelo (a Read API da Microsoft e o Cloud Vision do Google fazem melhor, mas ambos exigem upload). Tabelas com muita coluna. Um PDF de planilha complexa sai como texto plano com as colunas grudadas; essa ferramenta preserva ordem de leitura, não a estrutura da tabela. Pra tabelas que precisam virar dados use o pdf-to-excel. Fontes decorativas ou estilizadas. Logo, fonte grande de manchete, efeito de texto renderizado — frequentemente falham ou voltam como nonsense, porque o modelo espera forma de texto corrido. Resolução muito baixa. Print de um parágrafo com 320 pixels de largura: chuta. Com 1500 pixels de largura: lê.
Por que isso fica no seu navegador
Quando uma pessoa faz OCR, normalmente o documento é pessoal: um RG escaneado pra preencher visto, uma conta médica do convênio, um holerite pra dar entrada em financiamento imobiliário, um contrato que alguém mandou como JPG em vez de Word. O caminho mais curto pra texto-pronto-no-clipboard quase sempre passa por algum site grátis de OCR que silenciosamente guarda o upload «pra melhorar a qualidade». A gente testou os mais populares pro nosso privacy audit de editores PDF e o padrão se repete em OCR: upload pro servidor, política de retenção que diz «poucas horas» mas se conecta no mesmo disco depois, analytics de terceiros recebendo hash da forma do arquivo. A gente fez o trabalho de rodar OCR 100% no aparelho porque o tipo de arquivo que você aponta pra essa ferramenta é o tipo que você prefere não entregar pro servidor de ninguém.
O que acontece com seu arquivo
Abre o DevTools, vai na aba Network e solta o arquivo. Você vai ver um download único do núcleo WASM e do modelo de idioma português (cerca de 10 MB juntos) na primeira vez, e depois disso zero requisições saindo carregando qualquer parte do seu arquivo. Nas próximas vezes não tem requisição nenhuma — o motor fica em cache e a página funciona offline. O texto reconhecido vive numa textarea do navegador que você pode copiar ou baixar como .txt. Nada disso passa por nenhum log nosso, em momento algum.
Quando OCR em servidor faz mais sentido
Se você processa 10.000 notas fiscais por noite, uma ferramenta no navegador é a forma errada — você quer fila e frota de workers com GPU. Se precisa de OCR de manuscrito com alta precisão, as APIs de nuvem ainda são melhores que open-source. Se seus documentos são públicos — arquivos históricos, contratos de domínio público, prints do seu próprio blog — não tem ganho de privacidade e o servidor pode ser mais rápido. A questão não é que OCR local vence em todo cenário; é que pras fotos que ficam no rolo da câmera de uma pessoa, o cálculo inverte e não devia exigir um salto de fé sobre política de retenção.
Se você já tem um PDF com camada de texto — a maioria dos PDFs criados digitalmente tem — usa o pdf-to-txt: é mais rápido e sem perda, porque lê o texto embutido em vez de rodar OCR sobre a página renderizada.
Perguntas frequentes
Minha imagem vai pro servidor de vocês?
Não. A imagem abre no seu navegador e é processada lá. O motor de reconhecimento — Tesseract.js — baixa uma única vez (~10 MB), fica em cache no navegador e roda local. Pra conferir, abre o DevTools, vai na aba Network e solta o arquivo: você não vê nenhuma requisição saindo com sua imagem.
Quais tipos de arquivo são aceitos?
JPG, PNG, WebP, HEIC (iPhone) e PDF de uma página. O HEIC é decodificado no navegador — sem conversão separada. PDF de várias páginas: só a primeira é processada; primeiro divide com o split-pdf se precisa de todas.
Quais idiomas a ferramenta reconhece?
25 idiomas: inglês, alemão, francês, espanhol, italiano, português (cobre brasileiro), polonês, holandês, dinamarquês, sueco, romeno, húngaro, tcheco, turco, indonésio, vietnamita, russo, ucraniano, grego, árabe, tailandês, japonês, coreano, chinês simplificado e chinês tradicional. O seletor fica na barra de cima; o padrão vem detectado pelo locale do navegador e fica salvo entre sessões.
Qual é a precisão do reconhecimento?
Num scan limpo a 300 DPI de texto datilografado, 98–99%. Numa foto nítida de página impressa ou comprovante, 95%+. Numa imagem borrada, com pouca luz ou inclinada, 60–80% — vai precisar de revisão. Cada resultado mostra uma pontuação de confiança pra você saber em que ponto da faixa caiu.
E documentos que misturam português e inglês?
Tratado automaticamente. Escolhe português como primário e o motor carrega o inglês como alfabeto secundário no mesmo passo de reconhecimento — assim nome de marca (Excel, WhatsApp, PIX), URL e termos técnicos em inglês saem limpos junto com o texto em português. Um badge + EN ao lado do seletor mostra quando esse modo misto está ativo. O custo é ~30% mais lento e ~2× de memória; a gente liga por padrão porque a alternativa — passo de idioma único num documento misto — é exatamente o que produz nomes de marca embolados.
Funciona com escrita à mão?
Mal. O Tesseract foi treinado em texto impresso — cursiva, receita médica manuscrita, anotações de caderno confundem. Pra manuscrito, a Read API da Microsoft e o Cloud Vision do Google funcionam significativamente melhor, mas ambos exigem upload da imagem.
Por que a primeira execução é lenta?
Porque o motor de reconhecimento — cerca de 10 MB de WebAssembly mais um modelo de idioma — baixa pro seu navegador na primeira vez. Depois disso o motor fica em cache e o reconhecimento começa instantâneo. A página funciona offline depois do primeiro carregamento.
Posso usar no celular?
Sim. A página é uma página web normal que roda em qualquer navegador moderno mobile. Em celulares mais antigos a primeira execução demora mais por causa do download do motor; as próximas são rápidas.
E tabelas, layouts em várias colunas ou documentos complexos?
O texto sai em ordem de leitura como fluxo de parágrafo plano — a estrutura da tabela não é preservada. Pra PDFs onde você precisa das linhas e colunas como dados, usa o pdf-to-excel. Pra PDF que já tem camada de texto (a maioria dos PDFs criados digitalmente tem), usa o pdf-to-txt — é mais rápido, sem perda e não precisa de OCR.
É grátis mesmo? Tem limite?
É — sem conta, sem marca d'água, sem limite por exportação. O processamento roda no seu aparelho, então não tem custo de servidor pra recuperar. Limite prático: 25 MB por imagem pra o navegador não estourar a memória.