O código QR (código de resposta rápida) é o tipo de código de barras 2D ou código de barras de matriz. É a etiqueta legível por máquina que contém informações sobre o item anexado. Este artigo irá orientá-lo sobre a geração programática de códigos QR em Java para assinar eletronicamente seus documentos e imagens.

Adicionar QR Code a documentos e imagens em Java

Aqui estão os links rápidos para os tópicos abordados:

Gerador de código QR - API Java

GroupDocs.Signature for Java

Neste artigo, estou usando a API GroupDocs.Signature for Java para gerar códigos QR e anexá-los a arquivos PDF, documentos do Word, planilhas, apresentações e imagens. Essa API oferece suporte a diferentes tipos de assinaturas eletrônicas para uma ampla variedade de formatos de arquivo. Entre os tipos de código QR, a API suporta o seguinte:

  • código asteca
  • Código DataMatrix
  • GS1 DataMatrix
  • GS1 QR
  • QR

Baixe e configure

Você pode obter o arquivo JAR na seção downloads ou adicionar a seguinte configuração pom.xml em seus aplicativos Java baseados em Maven antes de passar para os exemplos. Para mais detalhes, você pode visitar a Referência da API.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-signature</artifactId>
        <version>21.2</version> 
</dependency>

Gere QR Code em Java - Adicione a PDF, Word, Excel, PPT

As classes Signature e QrCodeSignOptions podem criar e adicionar rapidamente diferentes tipos de códigos QR a documentos e imagens em Java.

  1. Crie o objeto de classe Signature com o documento de origem.
  2. Defina as propriedades do código QR usando a classe QrCodeSignOptions.
  3. Mais importante ainda, selecione o apropriado entre os tipos de código QR.
  4. Chame o método sign com o objeto Signature, passando o caminho do documento resultante e as opções do código QR.

O seguinte código Java irá gerar o código QR e anexá-lo ao documento PDF fornecido.

// Assine eletronicamente PDF, Excel, PPT, documentos do Word e imagens com código QR usando GroupDocs.Signature for Java API
Signature signature = new Signature("filePath/document.pdf"); // Provide any DOC, PDF, XLS, PPT, PNG, JPG, WebP file.

// Criar opção de QR Code com texto predefinido
QrCodeSignOptions options = new QrCodeSignOptions("Signed by GroupDocs");
options.setEncodeType(QrCodeTypes.QR);
options.setAllPages(true);

// Definir posição e aparência do código QR
options.setLeft(50);
options.setTop(50);
options.setHeight(90);
options.setWidth(90);

// Assine o documento e salve o arquivo
signature.sign("filePath/document-with-qr-code.pdf", options);

O arquivo PDF resultante é mostrado aqui com o código QR adicionado usando o código acima. Da mesma forma, você pode fornecer qualquer documento do Word, planilha, apresentação ou qualquer outro formato de documento compatível para anexar os códigos QR.

Código QR adicionado ao PDF usando API de assinatura

Arquivo PDF com código QR adicionado usando GroupDocs.Signature for Java API

Gerar código QR em Java - Adicionar a imagens JPG, PNG ou WebP

Imagem com QR Code

Agora, você deve estar pensando que haverá uma estratégia diferente para adicionar códigos QR às imagens. A resposta é não. Você pode usar o mesmo código acima para gerar o código QR e adicioná-lo às imagens também. A API permite adicionar códigos QR a imagens JPG/JPEG, PNG, WebP, BMP, GIF, SVG, CMX e TIFF.

Você também pode alterar a aparência dos códigos QR, como cor de fundo, cor principal, transparência e muito mais. Aqui, defini a cor de fundo preta e a cor principal como branco.

// Alterar a aparência do código QR em Java
// Definir a cor de fundo, a cor principal, a transparência, etc.
Background background = new Background();
background.setColor(Color.BLACK);
background.setTransparency(0.5);

options.setBackground(background);
options.setForeColor(Color.WHITE);

Conclusão

Agora, você deve estar confiante o suficiente para gerar códigos QR em seus aplicativos Java para assinar documentos e imagens eletronicamente usando GroupDocs.Signature. Para remover qualquer ambigüidade ou qualquer cenário não resolvido na documentação, sinta-se à vontade para entrar em contato com a equipe de suporte no fórum. Muitos outros exemplos também estão disponíveis no GitHub.

Veja também