如何使用 Aspose.BarCode 为 .NET 创建瑞士 QR 代码

如何使用 Aspose.BarCode 为 .NET 创建瑞士 QR 代码

本文解释了如何使用 Aspose.BarCode 为 .NET 在 C# 创建 ** 瑞士 QR 代码(QR-bill)**。

现实世界问题

瑞士企业必须在账单上包含标准化QR代码,以便自动支付并满足法律要求,格式是规定的,不遵守可能会导致拒绝支付或法律问题。

解决方案概述

Aspose.BarCode for .NET 提供一个专门的 SwissQR 编码器,以根据瑞士标准创建 QR 账单代码,包括字段分数和错误纠正,为银行和发票工作流做好准备。

原則

在你开始之前,请确保你有:

  • Visual Studio 2019 或以后
  • .NET 6.0 或更高版本(或 .Net Framework 4.6.2+)
  • Aspose.BarCode for .NET 通过 NuGet 安装
  • 关于C#的基本知识
PM> Install-Package Aspose.BarCode

步骤实施

步骤 1: 安装和进口 Aspose.BarCode

安装 NuGet 包并进口所需的名称空间:

using Aspose.BarCode.Generation;

步骤2:创建瑞士QR代码发电机

根据 QR-bill 格式准备瑞士 QR 代码数据。

string swissQrData = "SPC\n0200\n1\nCH9300762011623852957\nS\nRobert Schneider AG\nRue du Lac 1268\n2501\nBiel\nCH\n\n\n3949.75\nCHF\nHans Muster\nBahnhofstrasse 1\n8001\nZurich\nCH\nQRR\n210000000003139471430009017\nInvoice 2025\nEPD";
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.SwissQR, swissQrData);

步骤3:自定义瑞士QR配置和设置

设置 ECC 水平和颜色,以满足:

generator.Parameters.Barcode.QR.QrErrorLevel = QRErrorLevel.LevelM;
generator.Parameters.Barcode.XDimension.Pixels = 6;
generator.Parameters.Barcode.BarColor = Color.Black;
generator.Parameters.Barcode.BackColor = Color.White;

步骤4:创建和保存瑞士QR代码

出口到 PNG 或其他支持的格式:

generator.Save("swiss-qr-bill.png", BarCodeImageFormat.Png);

步骤5:完整的例子

using Aspose.BarCode.Generation;
using System.Drawing; // Required for Color

class Program
{
    static void Main()
    {
        string swissQrData = "SPC\n0200\n1\nCH9300762011623852957\nS\nRobert Schneider AG\nRue du Lac 1268\n2501\nBiel\nCH\n\n\n3949.75\nCHF\nHans Muster\nBahnhofstrasse 1\n8001\nZurich\nCH\nQRR\n210000000003139471430009017\nInvoice 2025\nEPD";
        BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.SwissQR, swissQrData);
        generator.Parameters.Barcode.QR.QrErrorLevel = QRErrorLevel.LevelM;
        generator.Parameters.Barcode.XDimension.Pixels = 6;
        generator.Parameters.Barcode.BarColor = Color.Black;
        generator.Parameters.Barcode.BackColor = Color.White;
        generator.Save("swiss-qr-bill.png", BarCodeImageFormat.Png);
        // Validate QR-bill with Swiss banking app
    }
} 

使用案例和应用程序

  • 瑞士账单和发票: 电子和纸质账户的合法要求的QR票
  • 银行/支付: 瑞士金融机构即时数据输入
  • 遵守审计: 为监管检查创建和记录QR账户数据

共同挑战与解决方案

挑战1:银行拒绝支付吗?解决方案: 验证 QR 数据结构和字段长度,严格遵循 SIX QR-bill 格式。

挑战2:应用程序无法阅读QR吗?解决方案: 使用 M 级错误修复,确保正确的 DPI、打印大小和对比。

挑战3:数据地图的发票?解决方案: 自动从发票字段中产生QR账单数据序列。

绩效考虑

  • 发票的瑞士QR代码
  • 使用内存流与ERP或银行平台集成
  • 测试所有主要的瑞士银行应用程序

最佳实践

  • 通过官方的QR证书验证所有输出 QR 代码
  • 使用样品发票数据进行早期测试,然后自动生产
  • 出口 300 DPI 印刷发票
  • 登录所有QR账户数据进行审计和遵守

先进的场景

巴奇为多发票提供瑞士QR代码

foreach (var invoice in invoices)
{
    BarcodeGenerator g = new BarcodeGenerator(EncodeTypes.SwissQR, invoice.QrData);
    g.Save($"swissqr_{invoice.Id}.png", BarCodeImageFormat.Png);
}

二、定制 QR 代码

generator.Parameters.Barcode.BarColor = Color.DarkGreen;
generator.Parameters.Barcode.BackColor = Color.WhiteSmoke;

结论

使用 Aspose.BarCode for .NET,您可以为数字发票和支付创建瑞士QR账单代码,完全符合瑞士银行要求。 Aspose.BarCode API 参考 .

 中文