Jak generować kody QR z użyciem Aspose.BarCode dla .NET
W tym artykule wyjaśniono, jak generować kody QR (QR-bill) za pomocą Aspose.BarCode dla .NET w C#. Kod QR jest obowiązkowy dla cyfrowych faktur i płatności w Szwajcarii, zgodnie z rygorystycznym układem i zasadami danych określonymi przez SIX Interbank Clearing.
Problem świata rzeczywistego
Szwajcarskie firmy muszą zawierać standardowy kod QR (QR-bill) na fakturach, aby automatycznie dokonywać płatności i spełniać wymagania prawne.
Przegląd rozwiązania
Aspose.BarCode dla .NET zapewnia specjalistyczny koder SwissQR do tworzenia kodów QR-bill zgodnie ze standardami szwajcarskimi, w tym rozmiary pola i naprawy błędów, gotowy do bankowania i fakturowania przepływów roboczych.
Warunki
Zanim zaczniesz, upewnij się, że masz:
- Visual Studio 2019 lub później
- .NET 6.0 lub nowszy (lub .Net Framework 4.6.2+)
- Aspose.BarCode dla .NET zainstalowany za pośrednictwem NuGet
- Podstawowe informacje o C#
PM> Install-Package Aspose.BarCode
Wdrażanie krok po kroku
Krok 1: Instalacja i import Aspose.BarCode
Zainstaluj pakiet NuGet i importuj wymagane przestrzenie nazwowe:
using Aspose.BarCode.Generation;
Krok 2: Tworzenie szwajcarskiego generatora kodu QR
Przygotuj dane kodu QR w formacie QR-bill. Przykład:
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);
Krok 3: Dostosuj szwajcarski układ QR i ustawienia
Określenie poziomu i koloru ECC dla zgodności:
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;
Krok 4: Generuj i przechowuj kod QR szwajcarski
Eksport do PNG lub innych formatów obsługiwanych:
generator.Save("swiss-qr-bill.png", BarCodeImageFormat.Png);
Krok 5: Pełny przykład
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
}
}
Korzystanie z przypadków i aplikacji
- Faktury szwajcarskie i fakturowanie: Zasadniczo wymagane rachunki QR na faktury elektroniczne i papierowe
- Banking/Płatności: Natychmiastowy wpis danych dla szwajcarskich instytucji finansowych
- Audyty zgodności: Generuj i rejestruj dane o rachunku QR do kontroli regulacyjnych
Wspólne wyzwania i rozwiązania
**Wyzwanie 1: Płatność odrzucona przez bank?**Rozwiązanie : Validuj strukturę danych QR i długości pola, śledź format SIX QR-bill ściśle.
Wyzwanie 2: QR nie jest czytelne przez aplikacje?Rozwiązanie : Użyj korekcji błędu poziomu M, upewnij się, że poprawny DPI, rozmiar druku i kontrast.
**Wyzwanie 3: Mapowanie danych dla faktur?**Rozwiązanie : Automatyczna generacja łańcuchów danych QR-bill z pól faktury.
uwzględnienie wydajności
- Szwajcarskie kody QR dla faktur
- Użyj strumieni pamięci do integracji z ERP lub platformami bankowymi
- Test wszystkich głównych szwajcarskich aplikacji bankowych
Najlepsze praktyki
- Validuj wszystkie wyjściowe kody QR za pomocą oficjalnych weryfikatorów biletu QR
- Użyj danych faktury próbki na wczesne testy, a następnie automatyzuj do produkcji
- Eksport w wysokości 300 dpi dla faktur drukowanych
- Zarejestruj wszystkie dane QR-bill dla audytu i zgodności
Zaawansowane scenariusze
Batch generuje szwajcarskie kody QR dla wielu faktur
foreach (var invoice in invoices)
{
BarcodeGenerator g = new BarcodeGenerator(EncodeTypes.SwissQR, invoice.QrData);
g.Save($"swissqr_{invoice.Id}.png", BarCodeImageFormat.Png);
}
Dostosowany kod QR
generator.Parameters.Barcode.BarColor = Color.DarkGreen;
generator.Parameters.Barcode.BackColor = Color.WhiteSmoke;
konkluzja
Za pomocą Aspose.BarCode dla .NET można utworzyć szwajcarskie kody rachunkowe QR dla cyfrowych faktur i płatności, w pełni zgodne z wymaganiami bankowości. Aspose.BarCode API Referencje .