Decodificador de QR Code
Decodificador online gratuito de QR codes. Envie uma foto ou use a câmera para ler o texto ou URL dentro de qualquer QR. Roda localmente no navegador.
Sobre o Decodificador de QR Code
O Decodificador de QR Code lê os dados ocultos dentro de um QR (Quick Response), o padrão quadrado preto e branco que você vê em pôsteres, cartões de visita, cardápios, embalagens, telas de pagamento e ingressos de eventos. Você pode enviar uma foto que contenha um QR ou apontar a câmera do seu dispositivo, e a ferramenta extrai o conteúdo de texto, que normalmente é uma URL, mas também pode ser credenciais de Wi-Fi, um contato vCard, e-mail, SMS, evento de calendário, coordenadas de geolocalização ou texto livre. A decodificação acontece inteiramente no navegador através da biblioteca de código aberto jsQR, que implementa o padrão ISO/IEC 18004: localiza os três quadrados localizadores nos cantos, calcula a transformação de perspectiva, amostra os módulos de dados e roda correção de erros Reed-Solomon para recuperar os bytes originais mesmo que parte do código esteja suja ou parcialmente coberta. Nenhum dado de imagem é enviado a nenhum servidor, o que torna a ferramenta segura para QR que possam conter informações pessoais, como tokens de pagamento, senhas de Wi-Fi ou URLs privadas. Há suporte tanto para a Versão 1 (21 x 21) quanto para a maior Versão 40 (177 x 177), incluindo todos os quatro níveis de correção de erros L / M / Q / H.
O que este decodificador de QR faz?
Ele recebe uma imagem enviada por você ou um fluxo de câmera ao vivo, encontra qualquer QR presente no quadro e exibe o texto ou URL original que foi codificado. Internamente implementa a especificação ISO/IEC 18004: detecta os três padrões localizadores de canto, calcula uma deformação de perspectiva para uma grade perfeita, lê os módulos de dados, aplica a máscara de formato e executa correção Reed-Solomon (responsável por permitir que QR codes funcionem mesmo quando até cerca de 30% da superfície está danificada, dependendo do nível de correção escolhido na geração). O conteúdo decodificado costuma ser uma URL, mas também pode ser Wi-Fi, vCard, e-mail, SMS, geolocalização, eventos de calendário ou texto puro.
Quais tipos de arquivo e formatos de QR são suportados?
Qualquer formato de imagem raster que o navegador consiga decodificar: JPG, JPEG, PNG, GIF (primeiro quadro), BMP e WebP, além de HEIC no Safari. Não há limite rígido de tamanho já que nada é enviado, mas a ferramenta redimensiona imagens com mais de 1600 px no lado maior para acelerar a leitura. Suporta da Versão 1 (21 x 21 módulos) até a maior Versão 40 (177 x 177 módulos), os quatro níveis de correção de erros (L 7%, M 15%, Q 25%, H 30%), todos os padrões de máscara e tanto o modo padrão byte/UTF-8 quanto o modo Kanji. QR invertidos (branco sobre preto) também são detectados automaticamente em uma segunda passagem.
O decodificador envia minha imagem ou usa o vídeo da minha câmera?
Não. A imagem carregada é desenhada em um Canvas dentro da página e decodificada pela biblioteca jsQR rodando no motor JavaScript do navegador; a aba de câmera usa getUserMedia para acessar a transmissão localmente e nunca grava ou transmite os quadros. Você pode verificar isso na aba Rede do navegador: após o carregamento da página, o escaneamento não gera nenhuma requisição de saída com dados de imagem. Isso torna a ferramenta segura para QR codes com informações sensíveis, como senhas de Wi-Fi da sua casa, segredos de autenticação em duas etapas, URLs de pagamento ou cartões de embarque. A permissão de câmera é exigida pelo próprio navegador apenas para acessar o dispositivo; você pode revogá-la a qualquer momento nas configurações do site.

Por que a decodificação falhou ou retornou texto errado?
QR codes são tolerantes, mas não milagrosos. Causas comuns de falha: ângulo muito inclinado (mais de 45 graus em relação à perpendicular), desfoque por movimento, baixo contraste (papel desbotado, brilho na tela do celular), o código ocupar menos de cerca de 100 pixels por lado na foto, quadrados localizadores danificados ou ausentes, e reflexos cortando a grade de dados. Tente uma foto mais limpa, com o código centralizado, bem iluminado, em foco e ocupando ao menos um terço do quadro. Para QR muito pequenos dentro de fotos grandes, recorte antes. Câmeras funcionam melhor quando o QR preenche a maior parte do visor e você mantém o aparelho parado por um a dois segundos. Se o código devolver texto truncado, ele pode estar usando codificação não padrão, como Shift-JIS Kanji em pôsteres japoneses.
Quais navegadores e dispositivos são suportados?
O decodificador funciona em todos os navegadores modernos com HTML5 Canvas e JavaScript ES2017: Chrome, Edge, Firefox, Safari, Opera e Samsung Internet, em desktop e mobile. A aba de câmera requer a API getUserMedia e a página servida em HTTPS (o WuTools usa), o que todos os navegadores modernos suportam. No iOS a câmera funciona no Safari a partir da versão 11. A biblioteca jsQR tem apenas cerca de 50 KB comprimidos, então a ferramenta carrega quase instantaneamente, mesmo em conexões móveis lentas. Não há requisito mínimo de hardware além de RAM suficiente para uma imagem; um celular de cinco anos atrás executa sem problemas.
O decodificador lê vários QR codes em uma só imagem?
A implementação atual lê um QR por imagem: retorna o primeiro código válido encontrado após a busca pelos cantos. Se você tem uma folha com vários QR, recorte e escaneie um por vez, ou use o modo câmera apontando para cada um. Estamos considerando suporte a múltiplos códigos no futuro; o algoritmo jsQR pode rodar sobre regiões sobrepostas, mas isso aumenta complexidade e custo de execução. Outros códigos 2D como Data Matrix, Aztec, MaxiCode e PDF417 usam algoritmos diferentes e não são tratados por um decodificador exclusivo de QR; para esses seria necessária uma biblioteca mais genérica.
