Wie man Schweizer QR-Codes mit Aspose.BarCode für .NET generiert
In diesem Artikel wird erläutert, wie Swiss QR-Codes (QR-Bill) mit Aspose.BarCode für .NET in C# erzeugt werden können.Der Schweizer QR Code ist für digitale Rechnungen und Zahlungen in der Schweiz obligatorisch, nach strengem Layout und Datenvorschriften, die von SIX Interbank Clearing definiert werden.
Real-Weltproblem
Schweizer Unternehmen müssen einen standardisierten QR-Code (QR-Bill) auf Rechnungen enthalten, um Zahlungen zu automatisieren und rechtliche Anforderungen zu erfüllen.
Überblick der Lösung
Aspose.BarCode für .NET bietet einen speziellen SwissQR-Coder zur Erstellung von QR-Bill-Koden nach Schweizer Standards, einschließlich Felddelimitern und Fehlerkorrektur, bereit für Bank- und Rechnungsarbeitströme.
Voraussetzung
Bevor Sie beginnen, stellen Sie sicher, dass Sie:
- Visual Studio 2019 oder später
- .NET 6.0 oder höher (oder .Net Framework 4.6.2+)
- Aspose.BarCode für .NET über NuGet installiert
- Grundkenntnisse von C#
PM> Install-Package Aspose.BarCode
Schritt für Schritt Implementierung
Schritt 1: Installation und Import Aspose.BarCode
Installieren Sie das NuGet-Paket und importieren Sie die erforderlichen Namenräume:
using Aspose.BarCode.Generation;
Schritt 2: Erstellen des Schweizer QR-Code Generators
Bereiten Sie die QR-Code-Daten nach QR Bill-Format vor. Beispiel:
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);
Schritt 3: Customize Swiss QR Layout und Einstellungen
ECC-Niveau und Farbe für die Einhaltung festlegen:
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;
Schritt 4: Erzeugen und speichern Sie den Schweizer QR-Code
Export in PNG oder andere unterstützte Formate:
generator.Save("swiss-qr-bill.png", BarCodeImageFormat.Png);
Schritt 5: Vollständiges Beispiel
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
}
}
Verwendung von Fällen und Anwendungen
- **Schweizer Rechnungen und Rechnung: ** Gesetzlich erforderliche QR-Rechnung für elektronische und Papierrechnungen
- Banking/Payments: Instant Data Entry für Schweizer Finanzinstitute
- Compliance Audits: Erzeugen und registrieren QR-Bill-Daten für regulatorische Überprüfungen
Gemeinsame Herausforderungen und Lösungen
Herausforderung 1: Zahlungen, die von der Bank abgelehnt werden?Die Lösung : Validieren Sie die QR-Datenstruktur und die Feldlänge, folgen Sie dem SIX-QR-Bill-Format strikt.
Herausforderung 2: QR kann nicht durch Apps gelesen werden.Die Lösung : Verwenden Sie Level M Fehlerkorrektur, sorgen Sie für die richtige DPI, Druckgröße und Kontrast.
**Herausforderung 3: Datenmapping für Rechnungen?**Die Lösung : Automatische QR-Bill-Datenstring-Generation aus Rechnungsfeldern.
Performance Beachtung
- Batch-generierte Schweizer QR-Codes für Rechnungen
- Verwenden Sie Speicherströme zur Integration mit ERP oder Bankplattformen
- Test mit allen wichtigen Schweizer Banking-Apps
Beste Praktiken
- Validieren Sie alle Ausgangs-QR-Codes mit offiziellen QR-Bill-Validatoren
- Verwenden Sie Probe-Funktionsdaten für frühe Tests, dann automatisieren Sie für die Produktion
- Export bei 300 DPI für Druckrechnungen
- Anmeldung aller QR-Bill-Daten für Audit und Compliance
Fortgeschrittene Szenarien
1. Batch Generiert Schweizer QR-Codes für mehrere Rechnungen
foreach (var invoice in invoices)
{
BarcodeGenerator g = new BarcodeGenerator(EncodeTypes.SwissQR, invoice.QrData);
g.Save($"swissqr_{invoice.Id}.png", BarCodeImageFormat.Png);
}
2. Anpassung von QR-Codes
generator.Parameters.Barcode.BarColor = Color.DarkGreen;
generator.Parameters.Barcode.BackColor = Color.WhiteSmoke;
Schlussfolgerungen
Mit Aspose.BarCode für .NET können Sie schweizer QR-Bill-Codes für digitale Rechnungen und Zahlungen erstellen, die vollständig den Schweizer Banking-Anforderungen entsprechen. Aspose.BarCode API Referenz .