Ir para o conteúdo principal
OpenQRS
Ferramentas
Idioma atual: Português
100% Privado

Gerador de QR Code vCard

100% privado e local — seus dados nunca saem do navegador. Estes QR Codes são permanentes e nunca expiram.

Configurações de Cartão de visita

Preenche a posição do nome próprio em N e a linha FN que a maioria dos apps de contatos exibe.

Informe um nome ou um sobrenome. Um vCard precisa carregar um nome de exibição, então um cartão sem nenhum dos dois não é um registro válido.

Preenche a posição do sobrenome em N. As agendas ordenam por ele.

Escrito em ORG. Um ponto e vírgula aqui é escapado, então não é lido como separador de departamento.

Escrito em TITLE, separado de ROLE.

Guardado como TEL;TYPE=cell. A forma internacional disca corretamente a partir de qualquer país.

Guardado como TEL;TYPE=work,voice.

Escrito em EMAIL. Um endereço só mantém o símbolo menor do que dois.

Escrito em URL. Inclua o esquema; alguns apps de contatos guardam um domínio solto como texto não clicável.

Terceiro componente de ADR. Rua e número em uma única linha.

O vCard 4.0 guarda o país como nome, não como código de duas letras.

Escrito em NOTE. As quebras de linha são codificadas, e cada caractere aqui aumenta o símbolo.

Design

Forma dos módulos
Predefinições
Moldura do canto
Adicionar logo central
Escolha uma imagem, ou solte uma aquiPNG, JPEG, WebP ou GIF, até 1000 KB

A imagem é lida nesta página e embutida no código como URL data:. Ela não é enviada a lugar nenhum e permanece dentro do arquivo que você baixa.

Mais opções de design

A metade escura do código. Mantenha-a bem abaixo do fundo em luminosidade.

Cobre a zona silenciosa e também os vãos entre os módulos. Um fundo transparente o deixa fora do arquivo, então nada é desenhado com ele.

Contraste 11.5:1 entre os módulos e o fundo.

Predefinições

PNG e WebP mantêm um canal alfa; o SVG simplesmente omite o retângulo de fundo. Aquilo sobre o que o código for colocado vira a metade clara do contraste.

Gradiente

O gradiente preenche apenas os módulos escuros. A ponta mais clara define o contraste que o leitor realmente recebe, então as duas pontas precisam continuar escuras.

A segunda cor, usada apenas enquanto um gradiente está selecionado. Ela é medida no contraste junto com a primeira.

45°

Graus no sentido horário a partir de uma varredura da esquerda para a direita. Um gradiente radial se espalha do centro para fora, então o ângulo vale só para o linear.

Forma dos módulos

Formas arredondadas cobrem menos de cada célula. O centro continua coberto, que é onde o decodificador faz a amostragem, mas uma impressão pequena de um código denso é lida com mais confiança em quadrados.

Moldura do canto

O anel dos três padrões de localização.

Centro do canto

O olho dentro de cada padrão de localização.

4 módulos

A margem em branco ao redor do código, medida em módulos. 4 é o mínimo especificado.

Uma recuperação mais alta sobrevive a mais dano e custa capacidade, então o mesmo conteúdo produz um símbolo mais denso.

Um logo ocupa o centro e mantém o nível em H. O limite de largura dele acompanha o símbolo: 14% no código menor, 30% em um denso.

Prévia ao vivo e exportação

Exportar

Exportar

Raster, para telas

Preencha o formulário para liberar os downloads.

Tamanho de exportação e texto codificado
Payload
Nada codificado ainda
Símbolo
Ainda não montado
Recuperação
M

Aguardando dados

Tamanho de exportação

Entre 64 e 4096 pixels. Exportando em 1024 px.

Texto codificado

Um QR Code vCard carrega um registro de contato completo, então escanear oferece salvar um contato em vez de abrir uma página. Cada campo preenchido soma bytes e o símbolo cresce junto, por isso um cartão completo precisa ser impresso maior do que um link simples.

Quando alguém escaneia

O celular mostra uma prévia do contato e oferece adicioná-lo à agenda, sem carregar página e sem baixar nada.

Como é um registro vCard 4.0

O payload é um pequeno documento de texto puro, não um link. Ele abre com BEGIN:VCARD e VERSION:4.0, leva uma propriedade por linha separadas por retorno de carro e alimentação de linha, e fecha com END:VCARD. A versão 4.0 é definida pela RFC 6350.

Duas propriedades cuidam do nome, e cada uma faz um trabalho diferente. N guarda o nome estruturado em cinco posições ordenadas, com o sobrenome primeiro. FN guarda a única string de exibição que a agenda mostra, e a RFC 6350 torna FN obrigatória — é por isso que um cartão sem nome nenhum não é um registro válido.

ADR é uma única propriedade com sete componentes em ordem fixa, e os componentes vazios continuam precisando dos seus separadores. É por isso que um endereço sem caixa postal começa com dois pontos e vírgulas antes da rua.

  • N:Ribeiro;Marina;;; e em seguida FN:Marina Ribeiro
  • ORG:Encadernadora Portal e TITLE:Diretora de produção
  • TEL;TYPE=cell:+5511912345678 e TEL;TYPE=work,voice:+551134567890
  • ADR;TYPE=work:;;Rua Augusta, 1508;São Paulo;SP;01304-001;Brasil
  • A RFC 6350 tipa TEL como uma URI tel:; a forma mais curta, com o número puro, usada aqui, é também a que os parsers da era 3.0 esperam

Por que um cartão de contato gera um símbolo grande

Um cartão que preenche todos os campos desta página chega a cerca de 400 bytes de texto, várias vezes um link web comum. O nível H gasta cerca de dois terços das codewords de um símbolo com correção de erros — 2.430 de 3.706 na versão 40 — e é isso que compra os aproximadamente 30% do símbolo que ele consegue restaurar. Isso também faz de H o nível que menos armazena: uma grade versão 20 comporta 382 bytes em H. Por isso o padrão aqui é M, que coloca a mesma informação em uma grade sensivelmente menor.

A versão 20 tem 97 módulos de largura. Com a zona silenciosa de quatro módulos que o padrão exige de cada lado, são 105 módulos de ponta a ponta. Impresso com 25 mm de largura, cada módulo fica com cerca de 0,24 mm. As recomendações de impressão colocam o piso entre 0,4 e 0,5 mm por módulo, então essas 105 larguras de módulo pedem algo entre 42 e 53 mm, e um cartão de contato completo com 25 mm fica bem abaixo de qualquer um dos dois números.

Se o código precisa ser pequeno, a saída é menos bytes, não mais recuperação. Tirar a nota, o segundo telefone e o estado costuma remover uns cem bytes do payload e puxar a versão vários passos para baixo.

  • Caracteres acentuados e não latinos são codificados em UTF-8, custando de dois a quatro bytes cada em vez de um
  • Um logo central força o nível H, então um cartão completo mais um logo exige o tamanho de impressão maior
  • O teto absoluto de um símbolo é 2.953 bytes, no nível L

A versão 4.0 e o que ainda a lê

Há três versões de vCard em circulação: a 2.1, a 3.0 da RFC 2426 e a 4.0 da RFC 6350. Esta página escreve 4.0, que é a especificação atual e a que define UTF-8 como codificação em vez de deixar o conjunto de caracteres a cargo de um parâmetro.

O app Contatos do iOS e os apps de contatos atuais do Android leem registros 4.0 a partir de um escaneamento. Abaixo disso o suporte não é universal: alguns apps de contatos de terceiros mais antigos e algumas agendas corporativas foram construídos sobre a 2.1 ou a 3.0 e ou ignoram propriedades que não reconhecem ou recusam o registro por inteiro. Se um cartão precisa alcançar uma frota de aparelhos antigos, teste um antes de imprimir mil.

Nada no registro é verificado. Um vCard declara aquilo que você digitou, então um escaneamento é uma oferta de salvar um contato, não uma prova de que o contato é legítimo. Toda plataforma mostra uma tela de confirmação antes de gravar na agenda.

Perguntas e respostas

Quanto posso colocar em um cartão antes que ele pare de escanear?

O limite é o tamanho de impressão, não o formato. Um cartão completo tem cerca de 400 bytes, o que no nível M cai em uma grade de aproximadamente 77 a 85 módulos. Impresso com 45 mm ou mais, ele escaneia à distância de um braço; impresso com 25 mm, os módulos caem para cerca de 0,24 mm e as câmeras de celular começam a errar.

Por que a versão 4.0 e não a 3.0?

A 4.0 é a especificação atual, a RFC 6350, e ela fixa a codificação de caracteres em UTF-8, de modo que nomes acentuados e escritas não latinas sobrevivem à ida e volta sem um parâmetro de charset. O custo é que alguns apps de contatos antigos feitos para 2.1 ou 3.0 podem descartar propriedades que não reconhecem.

Posso incluir uma foto no cartão?

Embutida, não. Uma propriedade PHOTO leva a imagem em base64, e mesmo uma foto de rosto pequena chega a dezenas de kilobytes contra um teto rígido de 2.953 bytes para o símbolo inteiro. Coloque a imagem em uma página sua e use o campo de site.

O que acontece com caracteres acentuados e escritas não latinas?

Eles são codificados em UTF-8 e guardados no modo byte do QR Code. Funcionam, mas não saem de graça: um caractere fora do ASCII simples custa de dois a quatro bytes em vez de um, então um nome em grego, árabe ou japonês empurra o símbolo uma ou duas versões para cima.

Como funciona um QR Code estático

Todo código deste site é estático: o payload é escrito nos próprios módulos pretos e brancos. Nada é consultado quando o código é lido, nenhum servidor nosso participa e nenhuma assinatura sustenta o código impresso. Essa mesma propriedade é o limite — depois de impresso, o que ele contém não pode ser alterado.

Três coisas decidem então se um código impresso é lido: quantos bytes o payload ficou, qual nível de recuperação absorve o dano e que largura um único módulo acaba tendo no papel. Estes guias percorrem cada uma delas com os números.