世界俱乐部杯赛

文档处理控件TX Text Control系列教程:使用 C# .NET 将二维码添加到 PDF 文档

翻译|使用教程|编辑:吉炜炜|2025-07-18 11:16:02.510|阅读 3 次

概述:本文介绍如何使用 C# 中的 Text Control .NET Server 组件将二维码添加到 PDF 文档。并提供了有效实现此功能所需的步骤和代码片段。

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

相关链接:


PDF 文档通常是合同、发票、证书和报告的最终格式。尽管它们在设计上是静态的,但用户现在希望能够与它们交互、验证信息并直接从这些文件访问数字服务。这时,二维码就变得至关重要。

PDF文档中的二维码

PDF 文档中的二维码将印刷或数字内容与动态在线体验连接起来。用户只需扫描二维码即可验证文档、打开相关网站、访问客户门户或继续工作流程。在打印和共享文档的环境中,二维码可确保数字连接保持完整。

添加二维码还能为物流和文档管理带来益处。例如,送货单、采购订单和访客通行证可以包含可扫描的嵌入式信息。这使得公司能够实现流程自动化并改进追踪。在医疗保健和法律等行业,二维码可以验证真实性,并在不改变原始文档布局的情况下引导用户查看补充说明。

TX Text Control 提供两种在 PDF 文档中嵌入二维码的主要方法。您可以使用 API 以编程方式添加二维码,也可以创建带有二维码占位符的模板,并将其与 JSON 文件中的数据合并。根据具体应用,这两种方法都提供了灵活性,可以满足不同的需求。

TX Text Control 官方试用版最新下载

以编程方式添加二维码

使用 TX Text Control 中的条形码对象,开发人员可以直接创建二维码并将其插入文档。此方法可以完全控制二维码的位置、大小和内容。

先决条件

您需要下载并安装 TX Text Control .NET Server for ASP.NET 的试用版:

创建应用程序

确保您下载了附带的最新版本的 Visual Studio 2022 。

  1. 在 Visual Studio 2022 中,选择“创建新项目” 来创建新项目

  2. 选择Console App作为项目模板并单击Next确认。

  3. 输入项目名称并选择保存项目的位置。单击“下一步”确认。

  4. 选择.NET 8.0(长期支持)作为框架

  5. 启用启用容器支持复选框并选择Linux作为容器操作系统

  6. 选择Dockerfile作为容器构建类型选项,并通过创建进行确认。

    创建 .NET 8 项目

添加 NuGet 包

  1. 在解决方案资源管理器,选择您创建的项目,然后项目主菜单中选择“管理 NuGet 包...”。选择“文本控制离线包”作为包源

    安装以下软件包:

    • TXTextControl.TextControl.Core.SDK

    ASP.NET Core Web 应用程序

使用 ServerTextControl

  1. 解决方案资源管理器中找到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 = "//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);
  1. 现在运行在 Docker 容器中运行应用程序的项目。

这将创建一个 PDF 文档,其中嵌入了指向给定网站的二维码。

使用邮件合并

在许多商业应用中,将文档的设计与数据分离至关重要。TX Text Control 允许模板包含二维码占位符,这些占位符会在合并过程中填充动态内容。使用 TX Text Control 的编辑器可视化地设计这些模板。添加二维码占位符并为其命名。

在文档生成过程中,应用程序会加载模板并将其与 JSON 数据文件合并。JSON 对象中的值会自动应用于二维码占位符。此方法非常适合批量处理任务,例如生成证书、会员卡或发票,这些任务中每个文档都需要唯一的二维码,但布局保持不变。

现在,我们来看一下开头截图中显示的装箱单示例。

PDF文档中的二维码

使用 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) 文档编辑器中准备好的模板,该编辑器可以无缝集成到您的应用程序中。

带有 QR 码占位符的模板

条形码可以链接到数据源字段,以便在最终文档生成期间自动使用正确的值进行更新。

带有 QR 码占位符的模板

此代码演示了如何使用 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# 中创建带有二维码和条形码的文档。


--------------------------------------------------------------------------

关于慧都

慧都科技是一家行业数字化解决方案公司,长期专注于软件、油气与制造行业。公司基于深入的业务理解与管理洞察,以系统化的业务建模驱动技术落地,帮助企业实现智能化运营与长期竞争优势。在软件工程领域,我们提供开发控件、研发管理、代码开发、部署运维等软件开发全链路所需的产品,提供正版授权采购、技术选型、个性化维保等服务,帮助客户实现技术合规、降本增效与风险可控。慧都科技TX Text Control在中国的官方授权代理商,提供TX Text Control系列产品免费试用,咨询,正版销售等于一体的专业化服务。TX Text Control是文档处理与管理领域的优秀产品,帮助企业实现高效的文档开发。

下载|体验更多TX Text Control产品,请联系在线客服咨询,或拨打产品热线:023-68661681




标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@defefr.cn

文章转载自:慧都网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP