Como funcionam os QR codes: anatomia, correção de erros e capacidade
O que realmente acontece quando o celular lê um QR code? Um guia claro sobre padrões de localização, módulos, versões, níveis de correção de erros e quantos dados cabem em um QR code.
Publicado em 6 min de leitura
Os QR codes estão por toda parte — em mesas de restaurante, encomendas, passagens de trem, cartões de visita e maquininhas de pagamento. Mesmo assim, pouca gente sabe o que se esconde dentro desses quadradinhos pretos e brancos, ou por que um código continua funcionando quando parte dele está coberta por um logo. Este guia explica, em linguagem simples, como os QR codes funcionam.
Um pouco de história
O QR code (abreviação de Quick Response code, ou “código de resposta rápida”) foi inventado em 1994 por Masahiro Hara na Denso Wave, uma empresa do grupo Toyota no Japão. As fábricas de automóveis precisavam rastrear peças mais rápido do que os códigos de barras unidimensionais permitiam. Um código de barras clássico armazena dados em uma única direção e comporta cerca de 20 caracteres; um QR code armazena dados tanto na horizontal quanto na vertical e pode guardar vários milhares.
A Denso Wave patenteou a tecnologia, mas optou por não fazer valer a patente, e o formato se tornou um padrão internacional (ISO/IEC 18004). Essa abertura é o principal motivo pelo qual qualquer pessoa pode gerar e ler QR codes gratuitamente, em qualquer dispositivo.
A anatomia de um QR code
Todo QR code é uma grade quadrada de pequenas células chamadas módulos. Cada módulo é escuro ou claro e representa um bit. Algumas áreas da grade têm funções fixas:
- Padrões de localização — os três quadrados grandes nos cantos. Eles permitem que o leitor encontre o código instantaneamente e descubra sua orientação, mesmo quando o código está de cabeça para baixo ou foi fotografado em ângulo.
- Padrões de alinhamento — quadrados menores (a partir da versão 2) que ajudam a corrigir distorções quando o código é impresso em uma superfície curva ou visto em perspectiva.
- Padrões de sincronização — linhas que alternam módulos escuros e claros entre os padrões de localização. Eles informam ao leitor o tamanho de cada módulo.
- Informações de formato — faixas ao lado dos padrões de localização que armazenam o nível de correção de erros e o padrão de máscara utilizado.
- Zona de silêncio — a margem vazia ao redor do código. Ela faz parte da especificação: sem ela, o leitor não consegue saber onde o código termina e onde o fundo começa.
Todo o resto são palavras-código de dados e de correção de erros, intercaladas por toda a grade.
Versões: por que alguns códigos são mais densos
Os QR codes existem em 40 tamanhos, chamados versões. A versão 1 tem 21 × 21 módulos; cada versão acrescenta 4 módulos por lado, até a versão 40, com 177 × 177 módulos. Quanto mais dados você codifica, maior a versão e menor fica cada módulo em um mesmo tamanho de impressão.
É por isso que uma URL curta gera um padrão limpo e espaçado, enquanto um bloco de texto longo gera um padrão denso, que precisa ser impresso em tamanho maior. Quando você cria um código no nosso gerador de QR code, a prévia mostra a versão e a quantidade de módulos para você ficar de olho na densidade.
Modos de codificação e capacidade
O QR code escolhe o modo de codificação mais eficiente para o seu conteúdo:
| Modo | Caracteres | Capacidade máx. (versão 40, nível L) |
|---|---|---|
| Numérico | 0–9 | 7.089 dígitos |
| Alfanumérico | 0–9, A–Z, espaço e $%*+-./: |
4.296 caracteres |
| Byte | Qualquer dado, geralmente texto UTF-8 | 2.953 bytes |
| Kanji | Caracteres japoneses | 1.817 caracteres |
Esses são os máximos teóricos. Na prática, os códigos continuam fáceis de ler até algumas centenas de caracteres. Se você precisa compartilhar mais do que isso, codifique um link curto para uma página da web.
Correção de erros: o segredo por trás dos logos
Os QR codes usam a correção de erros Reed–Solomon, a mesma matemática que permite que CDs e DVDs riscados continuem tocando. Palavras-código extras são adicionadas para que os dados originais possam ser reconstruídos mesmo que parte do código esteja danificada, suja ou encoberta. Há quatro níveis:
- L (Baixo) — recupera cerca de 7% das palavras-código danificadas
- M (Médio) — cerca de 15%
- Q (Quartil) — cerca de 25%
- H (Alto) — cerca de 30%
Níveis mais altos tornam o código mais robusto, mas também maior, porque mais espaço é gasto com redundância. É exatamente isso que torna possíveis os QR codes com logo: um logo no centro “danifica” parte do código de propósito, e a correção de erros preenche a lacuna. Para usar um logo, escolha o nível Q ou H e mantenha-o abaixo de cerca de um quarto da área do código.
Dica: a correção de erros não substitui um bom contraste. Um código claro demais, pequeno demais ou sem zona de silêncio pode falhar mesmo no nível H.
Máscaras: mantendo os padrões legíveis
Os dados brutos podem criar, por acaso, grandes blocos de uma só cor ou formas parecidas com padrões de localização, o que confunde os leitores. Para evitar isso, o codificador aplica um de oito padrões de máscara — fórmulas matemáticas que invertem determinados módulos — e fica com aquele que tiver a menor “pontuação de penalidade”. O leitor obtém o número da máscara nas informações de formato e a desfaz. Você nunca precisa se preocupar com máscaras, mas é por causa delas que dois códigos com conteúdo quase idêntico podem parecer completamente diferentes.
O que acontece quando você escaneia
Quando você aponta a câmera para um QR code, o leitor:
- Encontra os três padrões de localização e calcula a posição, o tamanho e a rotação do código.
- Corrige a perspectiva usando os padrões de alinhamento, para que um código inclinado vire uma grade plana.
- Amostra cada módulo como escuro ou claro, usando os padrões de sincronização como régua.
- Lê as informações de formato, remove a máscara e reúne as palavras-código.
- Corrige os erros com a decodificação Reed–Solomon.
- Interpreta os dados — um link, credenciais de Wi-Fi, um cartão de contato — e oferece a ação adequada.
Tudo isso leva poucos milissegundos. Você mesmo pode testar com o nosso leitor de QR code online, que executa essas etapas direto no seu navegador, a partir de uma imagem enviada, de um link ou da sua câmera.
QR codes estáticos x dinâmicos
Um QR code estático contém o conteúdo final diretamente: a URL, a senha do Wi-Fi ou o próprio texto. Ele funciona para sempre, não precisa de servidor e não pode ser rastreado. Um QR code dinâmico contém um link curto de redirecionamento controlado por um prestador de serviço, o que permite alterar o destino depois e contar as leituras — mas ele para de funcionar se a assinatura terminar.
Todo código criado no QR.tools é estático: grátis, privado e permanente. Se você precisar mudar o destino depois, aponte o código para uma página que você controla e atualize essa página.
O que um QR code pode conter?
Como um QR code simplesmente armazena texto, é o formato desse texto que define o que o celular faz com ele. Entre os formatos padronizados estão:
- URLs — abrem um site (
https://…) - Wi-Fi — conectam a uma rede (
WIFI:T:WPA;S:…;P:…;;) — veja o gerador de QR code Wi-Fi - vCard — salva um contato — veja o gerador de QR code vCard
- E-mail, SMS e telefone — iniciam uma mensagem ou uma ligação com
mailto:,SMSTO:etel: - Eventos de agenda — adicionam um evento com um
VEVENTdo iCalendar - Localizações — abrem um mapa com coordenadas
geo:
Principais conclusões
- Um QR code é uma grade de módulos com padrões fixos de localização, sincronização e alinhamento ao redor dos seus dados.
- Mais conteúdo significa uma versão maior, um padrão mais denso e um tamanho mínimo de impressão maior.
- A correção de erros (L, M, Q, H) permite que os códigos resistam a danos — e torna os logos possíveis.
- Códigos estáticos são permanentes e privados; códigos dinâmicos podem ser editados, mas dependem de um prestador de serviço.
Pronto para criar o seu? Abra o gerador de QR code e crie um código com suas próprias cores e seu logo em segundos.
Pronto para criar seu próprio QR code?
Crie um QR code personalizado com seu logo e suas cores em segundos — grátis e sem cadastro.
Abrir o gerador