QR 码(快速响应码)是二维条码或矩阵条码的一种。它是包含有关附加项目信息的机器可读标签。本文将指导您以编程方式在 Java 中生成 QR 代码以对文档和图像进行电子签名。

在 Java 中将 QR 码添加到文档和图像

以下是所涵盖主题的快速链接:

QR 码生成器 - Java API

用于 GroupDocs.Signature for Java

在本文中,我使用 GroupDocs.Signature for Java API 生成 QR 码并将它们附加到 PDF 文件、Word 文档、电子表格、演示文稿和图像中。此 API 支持各种文件格式的不同类型的电子签名。在二维码类型中,API 支持以下类型:

  • 阿兹特克法典
  • 二维码
  • GS1 数据矩阵
  • GS1二维码
  • 二维码

下载和配置

您可以从 downloads 部分获取 JAR 文件,或者在继续查看示例之前在基于 Maven 的 Java 应用程序中添加以下 pom.xml 配置。有关详细信息,您可以访问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>

用Java生成二维码——添加到PDF、Word、Excel、PPT

Signature 和 QrCodeSignOptions 类可以在 Java 中快速创建和添加不同类型的 QR 码到文档和图像。

  1. 使用源文档创建 Signature 类对象。
  2. 使用 QrCodeSignOptions 类设置 QR 码属性。
  3. 最重要的是,从二维码类型中选择合适的。
  4. 使用 Signature 对象调用 sign 方法,传递生成的文档路径和 QR 码选项。

以下 Java 代码将生成二维码并将其附加到提供的 PDF 文档中。

// 使用 GroupDocs.Signature for Java API 对 PDF、Excel、PPT、Word 文档和带有二维码的图像进行电子签名
Signature signature = new Signature("filePath/document.pdf"); // Provide any DOC, PDF, XLS, PPT, PNG, JPG, WebP file.

// 使用预定义文本创建 QR 码选项
QrCodeSignOptions options = new QrCodeSignOptions("Signed by GroupDocs");
options.setEncodeType(QrCodeTypes.QR);
options.setAllPages(true);

// 设置二维码位置和外观
options.setLeft(50);
options.setTop(50);
options.setHeight(90);
options.setWidth(90);

// 签署文件并保存文件
signature.sign("filePath/document-with-qr-code.pdf", options);

此处显示的是生成的 PDF 文件,其中包含使用上述代码添加的 QR 码。同样,您可以提供任何 word 文档、电子表格、演示文稿或任何其他 支持的文档格式 来附加二维码。

使用 Signature API 添加到 PDF 的二维码

使用 GroupDocs.Signature for Java API 添加二维码的 PDF 文件

在 Java 中生成二维码 - 添加到 JPG、PNG 或 WebP 图像

二维码图片

现在,您可能会想,将 QR 码添加到图像中会有不同的策略。答案是不。您可以使用上面相同的代码生成 QR 码并将其添加到图像中。该 API 允许您将二维码添加到 JPG/JPEG、PNG、WebP、BMP、GIF、SVG、CMX 和 TIFF 图像。

您还可以更改 QR 码的外观,例如背景颜色、前景色、透明度等。在这里,我将黑色背景色和前景色设置为白色。

// 在Java中改变QR码的外观
// 设置背景色、前景色、透明度等。
Background background = new Background();
background.setColor(Color.BLACK);
background.setTransparency(0.5);

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

结论

现在,您应该有足够的信心在 Java 应用程序中生成 QR 代码,以使用 GroupDocs.Signature 对文档和图像进行电子签名。要消除 文档 中的任何歧义或任何未解决的场景,请随时联系 论坛 上的支持团队。 GitHub 上还提供了许多其他示例。

也可以看看