Hur man genererar svenska QR-koder med Aspose.BarCode för .NET
I den här artikeln förklaras hur man genererar svenska QR-koder (QR-bill) med Aspose.BarCode för .NET i C#. Svenska QR koden är obligatorisk för digital fakturering och betalningar i Schweiz, enligt strikta layout och dataregler som definieras av SIX Interbank Clearing.
Realvärldsproblem
Schweiziska företag måste inkludera en standardiserad QR-kod (QR-bill) på fakturor för att automatisera betalningar och uppfylla juridiska krav.
Översikt över lösningen
Aspose.BarCode för .NET ger en specialiserad SwissQR-kodare för att skapa QR-billkoder enligt schweiziska standarder, inklusive fältdelimiterare och felkorrigering, redo för bank och fakturering arbetsflöden.
förutsättningar
Innan du börjar, se till att du har:
- Visual Studio 2019 eller senare
- .NET 6.0 eller senare (eller .Net Framework 4.6.2+)
- Aspose.BarCode för .NET installerat via NuGet
- Grundläggande kunskap om C#
PM> Install-Package Aspose.BarCode
Steg för steg genomförande
Steg 1: Installera och importera Aspose.BarCode
Installera NuGet-paketet och importera de nödvändiga namngräntorna:
using Aspose.BarCode.Generation;
Steg 2: Skapa den schweiziska QR Code Generator
Förbereda svenska QR koddata per QR-bill format. Exempel:
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);
Steg 3: Anpassa Swiss QR layout och inställningar
Ange ECC-nivå och färg för överensstämmelse:
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;
Steg 4: Generera och spara den svenska QR-koden
Export till PNG eller andra stödda format:
generator.Save("swiss-qr-bill.png", BarCodeImageFormat.Png);
Steg 5: Ett fullständigt exempel
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
}
}
Använd fall och applikationer
- Sviss fakturor och faktureringar: Lagligt krävs QR-biljett för elektroniska och pappersfakturer
- Banking/betalningar: Instant dataintroduktion för schweiziska finansinstitut
- Konformitetsrevisioner: Generera och logga QR-biljettdata för regelverkskontroller
Gemensamma utmaningar och lösningar
**Utmaning 1: Betalning avvisas av banken?**Lösningen är: Validerar QR-datastrukturen och fältlängderna, följ SIX-QR-billformat strikt.
**Challenge 2: QR är inte läst av appar?**Lösningen är: Använd Nivå M felkorrigering, säkerställa rätt DPI, tryckstorlek och kontrast.
**Utmaning 3: Data kartläggning för fakturor?**Lösningen är: Automatisk QR-bill data sträng generering från faktura fält.
Prestanda överväganden
- Batch-genererade svenska QR-koder för fakturor
- Använd minnesflöden för integration med ERP eller bankplattformar
- Test med alla större schweiziska bankappar
Bästa praxis
- Validerar alla output QR-koder med hjälp av officiella QR-biljettvalider
- Använd prov faktura data för tidiga tester, sedan automatisera för produktion
- Export på 300 dpi för utskriftsfaktura
- Logga in alla QR-billdata för revision och överensstämmelse
Avancerade scenarier
Batch genererar svenska QR-koder för flera fakturor
foreach (var invoice in invoices)
{
BarcodeGenerator g = new BarcodeGenerator(EncodeTypes.SwissQR, invoice.QrData);
g.Save($"swissqr_{invoice.Id}.png", BarCodeImageFormat.Png);
}
Anpassad QR-kod uppträdande
generator.Parameters.Barcode.BarColor = Color.DarkGreen;
generator.Parameters.Barcode.BackColor = Color.WhiteSmoke;
slutsatser
Med Aspose.BarCode för .NET kan du skapa schweiziska QR-billkoder för digitala fakturor och betalningar, helt i överensstämmelse med de svenska bankkraven. Aspose.BarCode API Referens .