文档处理控件TX Text Control系列教程:使用 C# .NET 将二维码添加到 PDF 文档
PDF 文档通常是合同、发票、证书和报告的最终格式。尽管它们在设计上是静态的,但用户现在希望能够与它们交互、验证信息并直接从这些文件访问数字服务。这时,二维码就变得至关重要。
PDF 文档中的二维码将印刷或数字内容与动态在线体验连接起来。用户只需扫描二维码即可验证文档、打开相关网站、访问客户门户或继续工作流程。在打印和共享文档的环境中,二维码可确保数字连接保持完整。
添加二维码还能为物流和文档管理带来益处。例如,送货单、采购订单和访客通行证可以包含可扫描的嵌入式信息。这使得公司能够实现流程自动化并改进追踪。在医疗保健和法律等行业,二维码可以验证真实性,并在不改变原始文档布局的情况下引导用户查看补充说明。
TX Text Control 提供两种在 PDF 文档中嵌入二维码的主要方法。您可以使用 API 以编程方式添加二维码,也可以创建带有二维码占位符的模板,并将其与 JSON 文件中的数据合并。根据具体应用,这两种方法都提供了灵活性,可以满足不同的需求。
TX Text Control 官方试用版最新下载
以编程方式添加二维码
使用 TX Text Control 中的条形码对象,开发人员可以直接创建二维码并将其插入文档。此方法可以完全控制二维码的位置、大小和内容。
先决条件
您需要下载并安装 TX Text Control .NET Server for ASP.NET 的试用版:
- 下载试用版
安装程序需要下载和安装。
创建应用程序
确保您下载了.NET 8 SDK附带的最新版本的 Visual Studio 2022 。
-
在 Visual Studio 2022 中,选择“创建新项目” 来创建新项目。
-
选择Console App作为项目模板并单击Next确认。
-
输入项目名称并选择保存项目的位置。单击“下一步”确认。
-
选择.NET 8.0(长期支持)作为框架。
-
启用启用容器支持复选框并选择Linux作为容器操作系统。
-
选择Dockerfile作为容器构建类型选项,并通过创建进行确认。
添加 NuGet 包
-
在解决方案资源管理器中,选择您创建的项目,然后从项目主菜单中选择“管理 NuGet 包...”。选择“文本控制离线包”作为包源。
安装以下软件包:
- TXTextControl.TextControl.Core.SDK
使用 ServerTextControl
-
在解决方案资源管理器中找到Program.cs文件,并将代码替换为以下代码片段:
using TXTextControl; using TXTextControl.Barcode; using TXTextControl.DataVisualization; using System.Drawing;// Create a new ServerTextControl instance for server-side document generation using var tx = new ServerTextControl();// Initialize a new, empty document tx.Create();// The text to be encoded in the QR code var barCodeText = "https://www.textcontrol.com";// Create the barcode core with type QR code and set the encoded text var barcodeCore = new TXBarcodeCore {BarcodeType = BarcodeType.QRCode,Text = barCodeText,UpperTextLength = barCodeText.Length // Optional visual setting };// Create a frame for the barcode and define its visual size var barcodeFrame = new BarcodeFrame(barcodeCore) {Size = new Size(5000, 5000) };// Add the barcode to the document at the end (-1 means current input position) tx.Barcodes.Add(barcodeFrame, -1);// Save the document as a PDF tx.Save("results.pdf", StreamType.AdobePDF);
-
现在运行在 Docker 容器中运行应用程序的项目。
这将创建一个 PDF 文档,其中嵌入了指向给定网站的二维码。
使用邮件合并
在许多商业应用中,将文档的设计与数据分离至关重要。TX Text Control 允许模板包含二维码占位符,这些占位符会在合并过程中填充动态内容。使用 TX Text Control 的编辑器可视化地设计这些模板。添加二维码占位符并为其命名。
在文档生成过程中,应用程序会加载模板并将其与 JSON 数据文件合并。JSON 对象中的值会自动应用于二维码占位符。此方法非常适合批量处理任务,例如生成证书、会员卡或发票,这些任务中每个文档都需要唯一的二维码,但布局保持不变。
现在,我们来看一下开头截图中显示的装箱单示例。
使用 TX Text Control 的邮件合并 引擎创建此装箱单非常简单。首先,如下所示,我们需要一个数据源,例如 JSON 对象。
[{"packing_slip_guid": "12345678-1234-1234-1234-123456789012","dispatch_date": "2024-01-01","recipient": {"id": 1,"name": "John Doe","company": "Company A","address": {"street": "123 Main St","city": "Anytown","state": "CA","zip": "12345"}},"product": {"product_id": 1,"name": "Product 1","qty": "Product 1 Description","code": "123456789012"},"items": [{"item_id": 1,"name": "Item 1","description": "Description 1","quantity": 1,"price": 100,"upc": "12345678901"},{"item_id": 2,"name": "Item 2","description": "Description 2","quantity": 2,"price": 200,"upc": "12345678902"},{"item_id": 3,"name": "Item 3","description": "Description 3","quantity": 3,"price": 300,"upc": "12345678903"},[...]]} ]
我们需要一个包含合并字段和条形码的模板文档。合并字段将使用来自数据源的数据填充,条形码将基于相同的数据生成。下方屏幕截图显示了 TX Text Control 的所见即所得 (WYSIWYG) 文档编辑器中准备好的模板,该编辑器可以无缝集成到您的应用程序中。
条形码可以链接到数据源字段,以便在最终文档生成期间自动使用正确的值进行更新。
此代码演示了如何使用 TX Text Control 的 MailMerge 类将动态 JSON 数据合并到预先设计的模板中来生成 PDF 文档。
using TXTextControl; using TXTextControl.DocumentServer; using System.IO;// Create a new ServerTextControl instance for document processing using var tx = new ServerTextControl();// Create a new, empty document tx.Create();// Load the template document in TX Text Control's internal format tx.Load("packing_slip.tx", StreamType.InternalUnicodeFormat);// Initialize the MailMerge component with the loaded document var mailMerge = new MailMerge {TextComponent = tx };// Load JSON data from file var jsonData = File.ReadAllText("data.json");// Merge the JSON data into the template mailMerge.MergeJsonData(jsonData);// Save the merged document as a PDF tx.Save("output.pdf", StreamType.AdobePDF);
结论
使用 TX Text Control,将二维码添加到 PDF 文档非常简单。无论您是通过编程方式生成二维码,还是结合模板使用邮件合并功能,该 API 的灵活性都让您能够创建动态的交互式文档,从而提升用户体验并简化工作流程。
二维码和条形码在各种文档或 PDF 中都非常有用,它们提供了一种便捷的方式,可以访问信息、验证真伪、追踪物品并增强用户交互。本文介绍如何使用 TX Text Control .NET Server for ASP.NET 在 .NET C# 中创建带有二维码和条形码的文档。