Como gerar um código QR (grátis, personalizável)
Crie códigos QR para URLs, WiFi, contatos e mais. Personalize cores e tamanho, baixe como PNG ou SVG.
O que é um código QR e por que gerar um?
Um código QR (código de resposta rápida) é um código de barras bidimensional que pode armazenar até 4.296 caracteres alfanuméricos ou 7.089 caracteres numéricos. Inventado em 1994 pela Denso Wave, uma subsidiária japonesa da Toyota, os códigos QR foram originalmente projetados para rastrear veículos durante a fabricação. Desde então, eles se tornaram uma ferramenta universal para conectar o físico e o digital: escanear um código QR impresso com a câmera do telefone abre uma URL, mostra dados de contato, conecta ao WiFi, ou executa fluxos de pagamento — sem digitar nada.
Você vai querer gerar códigos QR quando:
- Compartilhar uma URL: Imprima em um folheto, cartão de visita ou etiqueta de produto. As pessoas escaneiam e visitam.
- Acesso WiFi: Um código QR contendo o SSID e senha da sua rede permite que convidados se conectem sem digitar.
- Cartões de contato (vCard): Codifique seu nome, telefone, email e endereço para que as pessoas possam salvar diretamente nos contatos do telefone.
- Email e SMS: Pré-preencha o assunto e corpo de uma mensagem, ou o número de telefone de destino.
- Pagamentos com criptomoedas: Bitcoin, Ethereum e a maioria das wallets usam códigos QR para codificar um endereço de pagamento e um valor.
- Autenticação de dois fatores (TOTP): Aplicativos autenticadores como Google Authenticator exibem códigos QR para configurar 2FA em um novo dispositivo.
- Links profundos de apps: Link diretamente para uma tela no seu app (ex.: `myapp://product/123`).
- Inventário e ingressos: Um código QR em cada item codifica um ID para rastreamento.
A boa notícia: gerar códigos QR é grátis, rápido e privado se você usar a ferramenta certa.
Tipos e capacidade de códigos QR
Existem vários padrões para o conteúdo do código QR:
- URL: Um endereço web simples. `https://example.com`
- Texto: Texto arbitrário até ~4.000 caracteres
- vCard: Um cartão de contato com nome, telefone, email, endereço
- WiFi: `WIFI:T:WPA;S:mynetwork;P:mypassword;;`
- Email: `mailto:[email protected]?subject=Hello&body=Hi`
- SMS: `sms:+15551234567?body=Hello`
- Telefone: `tel:+15551234567`
- Geo: `geo:37.7749,-122.4194` (latitude, longitude)
- Criptomoedas: `bitcoin:1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa?amount=0.5`
Códigos QR também têm níveis de correção de erros que controlam quanto do código pode ser danificado antes de se tornar ilegível:
- L (Baixo): ~7 % do código pode ser perdido
- M (Médio): ~15 % pode ser perdido
- Q (Quartil): ~25 % pode ser perdido
- H (Alto): ~30 % pode ser perdido
Correção de erros mais alta torna o código QR mais denso (mais quadrados), mas mais resiliente. Para impressão em superfícies curvas, placas ao ar livre ou qualquer coisa que possa ser arranhada, use Q ou H.
Método 1: Use o gerador de códigos QR do UtilBoxx (Recomendado)
A maneira mais rápida, privada e personalizável de gerar códigos QR no navegador é o Gerador de Códigos QR do UtilBoxx. Suporta URLs, texto, WiFi, vCard, email, telefone, SMS, geo e criptomoedas, com personalização completa de cor e tamanho, e download como PNG ou SVG. Tudo roda no seu navegador: sem upload, sem cadastro, sem registro do que você gera.
Como usar:
- Acesse utilboxx.com/pt/tools/dev/qrcode
- Escolha seu tipo de conteúdo: URL, WiFi, vCard, email, etc.
- Preencha os campos (URL, SSID/senha, dados de contato, etc.)
- Personalize a cor, fundo, tamanho e correção de erros
- Clique em Gerar
- Baixe como PNG (para tela) ou SVG (para impressão)
Por que recomendamos este método:
- 100 % grátis, sem cadastro, sem e-mail, sem marcas d'água
- Privacidade em primeiro lugar: o código QR é gerado no seu navegador. O conteúdo nunca sai do seu dispositivo. Crítico para códigos QR sensíveis (senhas WiFi, segredos 2FA, endereços de criptomoedas).
- Todos os tipos principais: URL, WiFi, vCard, email, telefone, SMS, geo, criptomoedas
- Personalização completa: cor de primeiro plano, cor de fundo, tamanho, correção de erros, margem
- Exportação PNG e SVG: PNG para tela e web, SVG para impressão (SVG escala infinitamente sem perda de qualidade)
- Funciona em qualquer dispositivo com navegador
Se você gera códigos QR mesmo que uma vez por mês, esta ferramenta se paga em tempo economizado e privacidade.
Método 2: biblioteca python-qrcode (Python)
A biblioteca `qrcode` do Python (junto com `Pillow` para renderização de imagens) é a ferramenta canônica para geração programática de códigos QR. Instale com `pip install qrcode[pil]`.
```python import qrcode from qrcode.constants import ERROR_CORRECT_H
# URL simples qr = qrcode.QRCode( version=None, # detectar tamanho automaticamente error_correction=ERROR_CORRECT_H, box_size=10, # tamanho em pixels de cada quadrado border=4, # zona de silêncio em quadrados ) qr.add_data("https://example.com") qr.make(fit=True)
img = qr.make_image(fill_color="black", back_color="white") img.save("url_qr.png")
# Código QR WiFi wifi_qr = qrcode.QRCode(box_size=10, border=4) wifi_qr.add_data("WIFI:T:WPA;S:MyNetwork;P:MyPassword;;") wifi = wifi_qr.make_image() wifi.save("wifi_qr.png")
# vCard vcard = """BEGIN:VCARD VERSION:3.0 FN:Ada Lovelace ORG:UtilBoxx TEL:+15551234567 EMAIL:[email protected] URL:https://example.com END:VCARD""" vcard_qr = qrcode.QRCode(box_size=8, border=2) vcard_qr.add_data(vcard) vcard_img = vcard_qr.make_image() vcard_img.save("vcard_qr.png")
# Saída SVG (para impressão) from qrcode.image.svg import SvgPathImage svg_qr = qrcode.QRCode(box_size=10, border=4) svg_qr.add_data("https://example.com") svg_img = svg_qr.make_image(image_factory=SvgPathImage) with open("url_qr.svg", "wb") as f: svg_img.save(f) ```
Para geração em lote (digamos, 1.000 etiquetas de inventário), um pequeno script com `qrcode` e um CSV de IDs produz todos os arquivos em segundos.
Método 3: CLI com qrencode (Linux/macOS)
A ferramenta de linha de comando `qrencode` é uma maneira rápida e scriptável de gerar códigos QR. Instale com Homebrew no macOS (`brew install qrencode`) ou apt no Linux (`sudo apt install qrencode`).
```bash # Gerar um código QR para uma URL qrencode -o url.png "https://example.com"
# Gerar com correção de erros mais alta qrencode -o url.png -l H "https://example.com"
# Gerar como SVG (para impressão, escala infinitamente) qrencode -o url.svg -t SVG "https://example.com"
# Gerar como texto ANSI (para exibir no terminal!) qrencode -t ANSI "https://example.com"
# Gerar como texto UTF-8 (saída melhor no terminal) qrencode -t UTF8 "https://example.com"
# QR WiFi qrencode -o wifi.png "WIFI:T:WPA;S:MyNetwork;P:MyPassword;;"
# vCard qrencode -o vcard.png "BEGIN:VCARD VERSION:3.0 FN:Ada Lovelace TEL:+15551234567 END:VCARD" ```
O `qrencode` é o caminho mais rápido para geração pontual de QR em uma sessão de shell, e ideal para scripts que precisam embutir códigos QR em pipelines. O modo `-t ANSI` permite imprimir códigos QR diretamente no terminal, um truque divertido para compartilhar sem GUI.
Método 4: Ferramentas online (além do UtilBoxx)
Existem muitos outros geradores de código QR online — a maioria funciona, mas com ressalvas:
- Alguns enviam seus dados: Se você escaneia um QR de WiFi, o SSID e a senha são sensíveis. Certifique-se de que a ferramenta processe localmente (UtilBoxx faz) ou tenha uma política de privacidade clara.
- Alguns adicionam marcas d'água: Versões gratuitas frequentemente adicionam um pequeno logo ou borda com marca. Leia as letras miúdas.
- Alguns limitam recursos: Personalização, tipos e correção de erros podem estar atrás de um paywall.
- Alguns têm anúncios: Anúncios pop-up, anúncios de redirecionamento e pixels de rastreamento são comuns.
Em caso de dúvida, prefira uma ferramenta que respeita a privacidade e processa no navegador. O gerador de QR do UtilBoxx é construído sobre `qrcode` e executa todo o pipeline no lado do cliente.
Perguntas frequentes
Quantos dados um código QR pode conter?
O máximo é 4.296 caracteres alfanuméricos ou 7.089 caracteres numéricos ou 2.953 bytes binários no nível mais baixo de correção de erros. Na prática, códigos QR funcionam melhor com dados curtos — URLs longas ficam densas e difíceis de escanear. Para conteúdo acima de ~300 caracteres, considere uma URL encurtada (via um serviço como bit.ly) ou um tipo de código diferente (Data Matrix, PDF417, Aztec).
Qual a diferença entre um código QR estático e dinâmico?
Um código QR estático codifica uma URL ou conteúdo fixo. Não pode ser alterado após a geração. Um código QR dinâmico aponta para um serviço de redirecionamento que você controla: escaneie uma vez e a URL nunca muda, mas você pode atualizar para onde ela redireciona. Códigos dinâmicos requerem um serviço pago e têm um custo de privacidade (o serviço de redirecionamento registra cada escaneamento). Por privacidade, prefira códigos estáticos.
Códigos QR são um risco de segurança?
Sim, em algumas formas específicas:
- Quishing (phishing por QR): Um código QR malicioso pode levar a um site de phishing. Sempre visualize a URL antes de abrir.
- Malware drive-by: Um código QR pode linkar para um download malicioso de APK ou .exe. Não escaneie códigos de fontes não confiáveis.
- Compartilhamento WiFi: Se você gera um código QR para seu WiFi doméstico e o publica, qualquer pessoa pode se juntar à sua rede. Use redes de convidados com acesso limitado para códigos QR compartilhados.
- Redirecionamento de pagamento: Ataques de substituição de endereço de criptomoedas geram códigos QR para a wallet do atacante. Sempre verifique o endereço caractere por caractere antes de enviar.
O código QR em si é apenas um quadrado. O risco é a URL ou ação que ele dispara.
Qual o melhor tamanho para um código QR impresso?
Uma regra comum: o código QR deve ter pelo menos 1 cm (0,4 in) de largura para cada 10 caracteres de dados, com um mínimo de 2 cm × 2 cm (0,8 in × 0,8 in). Para a maioria dos códigos QR (~50 caracteres), 2 cm é suficiente. Para códigos densos (~500 caracteres), mire em 4-5 cm. Sempre inclua uma "zona de silêncio" de pelo menos 4 quadrados vazios ao redor do código — a maioria das ferramentas adiciona isso por padrão.
Para escaneamento à distância, multiplique pela distância esperada: um código destinado a ser escaneado de 1 metro deve ter pelo menos 2,5 cm de largura.
Os códigos QR podem ser estilizados ou ter marca?
Sim, mas com cuidado. Os três padrões de localização (os quadrados grandes em três cantos) devem permanecer perfeitamente intactos e com alto contraste contra o fundo. Você pode:
- Mudar a cor dos módulos de dados (primeiro plano) e fundo
- Adicionar um logo no centro (use correção de erros Q ou H para compensar os dados obscurecidos)
- Arredondar os cantos dos módulos para um visual moderno
- Adicionar uma moldura com texto abaixo do código
Não deve:
- Inverter cores (claro sobre escuro é difícil para alguns scanners)
- Adicionar gradientes (a maioria dos scanners consegue ler, mas alguns não)
- Colocar texto ou gráficos sobre os módulos de dados
- Distorcer a proporção quadrada
Qual o menor código QR escaneável?
O tamanho mínimo prático é cerca de 1 cm × 1 cm para dados curtos e boa iluminação. Códigos menores (até alguns milímetros) são possíveis com impressão de alta resolução e tinta de alto contraste, mas a maioria das câmeras de telefone tem dificuldade. Para a maioria dos usos, 2-3 cm é o piso prático.
Conclusão
Códigos QR são a ponte universal entre o físico e o digital. São grátis para gerar, grátis para escanear (todo telefone tem um scanner embutido), e suportam dezenas de tipos de conteúdo de URLs a credenciais WiFi a pagamentos com criptomoedas. A ferramenta certa importa: ferramentas que respeitam a privacidade rodam inteiramente no seu navegador, enquanto outras enviam seus dados para servidores remotos.
Para geração ocasional, o Gerador de Códigos QR do UtilBoxx é privado, grátis e produz saída PNG e SVG de alta qualidade com personalização completa. Para trabalho em lote, a biblioteca `qrcode` do Python ou a CLI `qrencode` lidam com milhares de códigos sem sair do seu terminal. E para casos pontuais, uma ferramenta online funciona desde que você confie nela com seus dados.
Uma dica rápida de design: mantenha o contraste alto (preto sobre branco é o padrão-ouro), adicione uma zona de silêncio, e use correção de erros H se planeja sobrepor um logo. Seu código QR vai escanear de forma confiável na primeira tentativa.