如何在 PDF 页面中添加二维码
将二维码直接嵌入 PDF 文档,即可即时为页面添加水印,或插入 URL、跟踪 ID 或数字签名等动态信息。
在现有 PDF 中添加二维码是文档工作流中的常见需求。 发票 PDF 文件中可能包含一个链接至支付门户的二维码。 政府记录中可能包含验证码。 活动门票可在不改变整个文档布局的情况下包含可扫描的身份证件信息。 IronQR 让这一切变得简单:使用 QrWriter.Write 生成二维码,并通过一次调用 DrawBitmap 将其添加到任意页面的任意位置。
本指南演示了如何使用 IronQR库将二维码嵌入到现有的 PDF 文件中。 尚未生成二维码的开发者,请先参阅《将二维码生成图片》指南。
快速入门:在 PDF 中嵌入二维码
生成一个二维码,并将其印在现有 PDF 页面的特定位置。
-
使用 NuGet 包管理器安装 https://www.nuget.org/packages/IronQR
PM > Install-Package IronQR -
复制并运行这段代码。
var qrBitmap = QrWriter.Write("https://example.com").Save(); var pdf = PdfDocument.FromFile("document.pdf"); pdf.Pages[0].DrawBitmap(qrBitmap, 505, 20, 70, 70); pdf.SaveAs("stamped.pdf"); -
部署到您的生产环境中进行测试
通过免费试用立即在您的项目中开始使用IronQR
最小工作流程(5 个步骤)
- 下载 IronQR C# 库,将二维码嵌入 PDF 文件
- 使用 `QrWriter.Write().Save()` 生成 QR 码位图
- 使用 `PdfDocument.FromFile()` 加载 PDF
- 调用 `DrawBitmap()` 时需传入页面索引、x/y 坐标及尺寸
- 使用 `SaveAs()` 保存修改后的 PDF
二维码生成后在 PDF 页面上添加
若要在现有 PDF 中嵌入二维码,请使用 QrWriter.Write 生成二维码,并使用 Save() 将其保存为 AnyBitmap。 使用 PdfDocument.FromFile 加载目标 PDF,然后使用 DrawBitmap 将二维码放置在精确坐标位置。 x 和 y 值以 PDF 点为单位(A4 页面为 595 × 842 点),而 desiredWidth 和 desiredHeight 控制水印的大小。
输入
下方的二维码编码为 https://ironsoftware.com,并将被嵌入到 PDF 中。
:path=/static-assets/qr/content-code-examples/how-to/stamp-qr-code-to-pdf.cs
using IronQr;
using IronPdf;
using IronSoftware.Drawing;
// Generate QR code bitmap
AnyBitmap qrBitmap = QrWriter.Write("hello world").Save();
// Load the existing PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Stamp the QR code at the top-right corner of page 1
// A4 page is 595 x 842 PDF points; x:505, y:20 places a 70pt QR near the top-right
pdf.DrawBitmap(qrBitmap, 0, 505, 20, 70, 70);
pdf.SaveAs("sample.pdf");
Imports IronQr
Imports IronPdf
Imports IronSoftware.Drawing
' Generate QR code bitmap
Dim qrBitmap As AnyBitmap = QrWriter.Write("hello world").Save()
' Load the existing PDF
Dim pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Stamp the QR code at the top-right corner of page 1
' A4 page is 595 x 842 PDF points; x:505, y:20 places a 70pt QR near the top-right
pdf.DrawBitmap(qrBitmap, 0, 505, 20, 70, 70)
pdf.SaveAs("sample.pdf")
修改后的 PDF 已保存为 SaveAs。 为避免覆盖源文件,请指定不同的输出路径。
输出
二维码位于第 1 页右上角,坐标为 (505, 20),尺寸为 70 × 70 PDF 点。
控制位置和页码
x 和 y 参数以 PDF 点为单位,从页面左上角开始测量。 增加 x 会将水印向右移动; 增加 y 会将其下移。 pageIndex 参数采用从零开始的计数方式,因此 pageIndex: 0 指向第一页。
以下示例在不同页面上添加了两个二维码——页面 1 的右上角为验证链接,页面 2 的左下角为支持链接:
输入
下方的两个二维码分别编码了验证和支持网址,这些网址将被印在不同的页面上。
第 1 页输入内容 — ironsoftware.com/verify 的二维码
第 2 页输入 — ironsoftware.com/support 的二维码
:path=/static-assets/qr/content-code-examples/how-to/stamp-qr-code-to-pdf-positions.cs
using IronQr;
using IronPdf;
using IronSoftware.Drawing;
PdfDocument pdf = PdfDocument.FromFile("document.pdf");
// Page 1: stamp a verification QR at the top-right corner
AnyBitmap qrVerify = QrWriter.Write("https://ironsoftware.com/verify").Save();
pdf.DrawBitmap(qrVerify, 0, 505, 20, 70, 70);
// Page 2: stamp a support QR at the bottom-left corner
AnyBitmap qrSupport = QrWriter.Write("https://ironsoftware.com/support").Save();
pdf.DrawBitmap(qrSupport, 1, 20, 752, 70, 70);
pdf.SaveAs("document.pdf");
Imports IronQr
Imports IronPdf
Imports IronSoftware.Drawing
Dim pdf As PdfDocument = PdfDocument.FromFile("document.pdf")
' Page 1: stamp a verification QR at the top-right corner
Dim qrVerify As AnyBitmap = QrWriter.Write("https://ironsoftware.com/verify").Save()
pdf.DrawBitmap(qrVerify, 0, 505, 20, 70, 70)
' Page 2: stamp a support QR at the bottom-left corner
Dim qrSupport As AnyBitmap = QrWriter.Write("https://ironsoftware.com/support").Save()
pdf.DrawBitmap(qrSupport, 1, 20, 752, 70, 70)
pdf.SaveAs("document.pdf")
输出
每个二维码均放置在对应角落——验证码位于第 1 页右上角,支持信息位于第 2 页左下角。
用例
- 发票支付链接:将支付门户网址编码后,将其嵌入第 1 页的右上角,以便客户扫描并立即付款。
- 文档验证:将记录 ID 或哈希值编码后,将其作为水印添加在每页底部,以便接收方验证真实性。
- 活动门票:请在第 1 页中央印上参会者 ID 或预订编号,以便入场时轻松扫描。
- 产品标签:将产品 URL 或序列号编码后,将其印在左上角或右下角,以便快速查询库存。
- 法律记录:编码案件编号或提交参考号,并将其加盖在每页页脚以确保可追溯性。
若需在生成二维码前进行更多控制(例如设置纠错级别或调整输出尺寸),请配置 QrOptions 对象,并在调用 StampToExistingPdfPage 之前将其传递给 QrWriter.Write。
如需了解更多二维码生成模式,请参阅 C# 二维码生成器教程以及 IronQR 的完整功能集。

