Jak utworzyć obraz kodu QR w języku C# za pomocą IronQR

This article was translated from English: Does it need improvement?
Translated
View the article in English

Aby utworzyć obraz kodu QR w C#, użyj metody QrWriter.Write() z biblioteki IronQR do wygenerowania kodu, a następnie Save(), aby uzyskać obiekt AnyBitmap oraz SaveAs(), aby wyeksportować go do preferowanego formatu obrazu, jak PNG lub JPEG.

Szybki start: Utwórz swój pierwszy obraz kodu QR

  1. Zainstaluj IronQR za pomocą menedżera pakietów NuGet
  2. Dodaj using IronQr; i using IronSoftware.Drawing;
  3. Wygeneruj kod QR: QrCode qrCode = QrWriter.Write("your text");
  4. Zapisz jako bitmapę: AnyBitmap anyBitmap = qrCode.Save();
  5. Wyeksportuj jako obraz: anyBitmap.SaveAs("myQRCode.png", AnyBitmap.ImageFormat.Png);

Oto kompletny przykład, który pomoże Ci zacząć:

  1. Install IronQR with NuGet Package Manager

    PM > Install-Package IronQR
  2. Skopiuj i uruchom ten fragment kodu.

    using IronQr;
    using IronSoftware.Drawing;
    
    // Generate a simple QR code
    QrCode myQrCode = QrWriter.Write("Hello, World!");
    
    // Save as an image bitmap
    AnyBitmap qrImage = myQrCode.Save();
    
    // Export to PNG file
    qrImage.SaveAs("hello-world-qr.png");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronQR w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer

Kody QR kodują dane jako wizualne wzory czarnych i białych kwadratów, które mogą odczytywać aparaty fotograficzne i skanery. Te dwuwymiarowe macierze przechowują adresy URL, tekst lub inne informacje w kompaktowym, łatwym do skanowania formacie. Aby zapoznać się z bardziej zaawansowanymi przykładami, zajrzyj do skróconego przewodnika QR.

Jak utworzyć kod QR jako obraz?

Jakiego kodu potrzebuję, aby wygenerować kod QR?

Tworzenie kodów QR za pomocą IronQR wymaga minimalnej ilości kodu. Wygeneruj obiekt kodu QR jednym poleceniem, a następnie wyeksportuj go jako obraz, używając metod Save i SaveAs. Klasa QrWriter zapewnia wszystkie funkcje potrzebne do generowania kodów QR.

:path=/static-assets/qr/content-code-examples/how-to/create-qr-code-image.cs
using IronQr;
using IronSoftware.Drawing;

// Creating a QR code
QrCode qrCode = QrWriter.Write("12345");

// Save QR code to AnyBitmap
AnyBitmap anyBitmap = qrCode.Save();

// Save AnyBitmap to PNG
anyBitmap.SaveAs("simpleQrCode.png", AnyBitmap.ImageFormat.Png);
Imports IronQr
Imports IronSoftware.Drawing

' Creating a QR code
Private qrCode As QrCode = QrWriter.Write("12345")

' Save QR code to AnyBitmap
Private anyBitmap As AnyBitmap = qrCode.Save()

' Save AnyBitmap to PNG
anyBitmap.SaveAs("simpleQrCode.png", AnyBitmap.ImageFormat.Png)
$vbLabelText   $csharpLabel
Przykładowy wygenerowany kod QR pokazujący wizualny wynik procesu tworzenia kodu QR

Do jakich formatów obrazów mogę eksportować?

Metoda Save zwraca obiekt AnyBitmap, który obsługuje wiele formatów eksportu.

  • JPEG (.jpg lub .jpeg): Format skompresowanych zdjęć wykorzystujący kompresję stratną.
  • PNG (.png): Bezstratny format idealny do użytku w sieci, obsługujący przezroczystość.
  • Bmp (.bmp): Nieskompresowany format systemu Windows, tworzący duże pliki o wysokiej jakości.
  • GIF (.gif): Obsługuje animacje i przezroczystość z ograniczeniem do 256 kolorów.
  • TIFF (.tiff lub .tif): Elastyczny format przeznaczony do profesjonalnej fotografii.
  • WBMP (.wbmp): Format monochromatyczny przeznaczony do komunikacji bezprzewodowej.
  • WebP (.webp): Nowoczesny format z doskonałą kompresją stratną i bezstratną.
  • Ikona (.ico): Małe kwadratowe obrazki służące jako ikony programów i plików.
  • WMF (.wmf): Format wektorowy i rastrowy dla grafiki systemu Windows.
  • RawFormat (.raw): Nieprzetworzone dane obrazu przeznaczone do profesjonalnej edycji.

Dlaczego warto wybrać format PNG zamiast JPEG dla kodów QR?

Format PNG zapewnia bezstratną kompresję i ostre krawędzie, które są niezbędne dla czytelności kodów QR. Kompresja stratna formatu JPEG może powodować rozmycie krawędzi kodu QR, co może wpływać na niezawodność skanowania. Format PNG zapewnia ostrość linii, co pozwala na optymalne skanowanie na wszystkich urządzeniach i w każdych warunkach.

Obsługa przezroczystości w formacie PNG stanowi wartość dodaną dla stylizowanych kodów QR z logo lub niestandardowymi kolorami. Dowiedz się więcej o tworzeniu stylizowanych kodów QR z zaawansowanymi opcjami dostosowywania w naszym przewodniku dla zaawansowanych.

Jak mogę kontrolować rozmiar i jakość kodu QR?

IronQR oferuje opcje kontroli rozmiaru i jakości:

using IronQr;
using IronSoftware.Drawing;

// Create QR code with custom dimensions
QrOptions options = new QrOptions(QrErrorCorrectionLevel.High, 20);
QrCode qrCode = QrWriter.Write("https://ironsoftware.com", options);

// Save with specific dimensions
AnyBitmap qrImage = qrCode.SaveAsPng(500, 500);

// Save to file
qrImage.SaveAs("custom-size-qr.png");
using IronQr;
using IronSoftware.Drawing;

// Create QR code with custom dimensions
QrOptions options = new QrOptions(QrErrorCorrectionLevel.High, 20);
QrCode qrCode = QrWriter.Write("https://ironsoftware.com", options);

// Save with specific dimensions
AnyBitmap qrImage = qrCode.SaveAsPng(500, 500);

// Save to file
qrImage.SaveAs("custom-size-qr.png");
Imports IronQr
Imports IronSoftware.Drawing

' Create QR code with custom dimensions
Dim options As New QrOptions(QrErrorCorrectionLevel.High, 20)
Dim qrCode As QrCode = QrWriter.Write("https://ironsoftware.com", options)

' Save with specific dimensions
Dim qrImage As AnyBitmap = qrCode.SaveAsPng(500, 500)

' Save to file
qrImage.SaveAs("custom-size-qr.png")
$vbLabelText   $csharpLabel

Korekta błędów decyduje o tolerancji na błędy przy zachowaniu czytelności. Wyższe poziomy tworzą złożone kody QR o większej odporności na błędy, co szczegółowo opisano w naszej dokumentacji dotyczącej odporności na błędy.


Jakie typy kodów QR są obsługiwane?

Jakiego typu kodu QR należy używać w standardowych zastosowaniach?

IronQR obsługuje wszystkie główne formaty kodów QR, dostosowane do różnorodnych potrzeb użytkowników:

  • QRCode: Standardowy kod QR przechowujący do 7089 znaków numerycznych lub 4296 znaków alfanumerycznych. Nadaje się do adresów URL, danych kontaktowych i ogólnego przechowywania danych.
Przykładowy kod QR przedstawiający standardowy czarno-biały wzór macierzy z kwadratami pozycjonującymi w rogach

Kiedy należy stosować mikro kody QR?

  • MicroQRCode: Mniejsza wersja przeznaczona do zastosowań o ograniczonej przestrzeni. Przechowuje do 35 znaków numerycznych lub 21 znaków alfanumerycznych. Idealny do małych opakowań lub niewielkich etykiet.
Standardowy kod QR przedstawiający typowy czarno-biały wzór kwadratów z narożnikami wskazującymi i modułami danych

Do czego najlepiej nadają się kody RMQR?

  • RMQRCode: Prostokątny mikro kod QR o elastycznym współczynniku proporcji. Przechowuje dane podobnie jak Micro QR Code, ale pasuje do prostokątnych przestrzeni.
Przykładowy kod QR przedstawiający standardowy wzór macierzy z markerami pozycjonującymi i kwadratami zawierającymi zakodowane dane

Najlepsze praktyki dotyczące generowania obrazów kodów QR

Jakie są kluczowe kwestie, które należy wziąć pod uwagę przy tworzeniu kodów QR do produkcji?

W przypadku kodów QR przeznaczonych do produkcji należy wziąć pod uwagę następujące czynniki:

  1. Poziom korekty błędów: Użyj poziomu wysokiego (H) w przypadku materiałów drukowanych, które mogą ulec uszkodzeniu. W przypadku wyświetlaczy cyfrowych wystarczy rozdzielczość średnia (M).
  2. Strefa ciszy: Zachowaj odstęp o szerokości co najmniej 4 modułów wokół kodu QR, aby zapewnić optymalne skanowanie.
  3. Kontrast: Najlepsze efekty daje czarny na białym tle. Funkcje stylizacji IronQR pozwalają na kreatywne wariacje przy zachowaniu czytelności.
  4. Rozmiar: Należy zapewnić minimalny rozmiar 2 cm x 2 cm dla drukowanych kodów. W zależności od odległości oglądania wyświetlacze cyfrowe mogą wymagać większych rozmiarów.

Jak radzić sobie z różnymi przypadkami użycia?

Różne zastosowania wymagają różnych podejść:

W przypadku wizytówek i materiałów PRINT:

// High error correction for durability
QrOptions printOptions = new QrOptions(QrErrorCorrectionLevel.High, 10);
QrCode businessCard = QrWriter.Write("BEGIN:VCARD\nVERSION:3.0\nFN:John Doe\nEND:VCARD", printOptions);
// High error correction for durability
QrOptions printOptions = new QrOptions(QrErrorCorrectionLevel.High, 10);
QrCode businessCard = QrWriter.Write("BEGIN:VCARD\nVERSION:3.0\nFN:John Doe\nEND:VCARD", printOptions);
' High error correction for durability
Dim printOptions As New QrOptions(QrErrorCorrectionLevel.High, 10)
Dim businessCard As QrCode = QrWriter.Write("BEGIN:VCARD" & vbLf & "VERSION:3.0" & vbLf & "FN:John Doe" & vbLf & "END:VCARD", printOptions)
$vbLabelText   $csharpLabel

Dla wyświetlaczy cyfrowych i stron internetowych:

// Medium error correction with larger modules for screen display
QrOptions digitalOptions = new QrOptions(QrErrorCorrectionLevel.Medium, 15);
QrCode webQr = QrWriter.Write("https://example.com", digitalOptions);
// Medium error correction with larger modules for screen display
QrOptions digitalOptions = new QrOptions(QrErrorCorrectionLevel.Medium, 15);
QrCode webQr = QrWriter.Write("https://example.com", digitalOptions);
' Medium error correction with larger modules for screen display
Dim digitalOptions As New QrOptions(QrErrorCorrectionLevel.Medium, 15)
Dim webQr As QrCode = QrWriter.Write("https://example.com", digitalOptions)
$vbLabelText   $csharpLabel

W przypadku aplikacji mobilnych:

// Optimized for mobile scanning
QrOptions mobileOptions = new QrOptions(QrErrorCorrectionLevel.Low, 8);
QrCode appQr = QrWriter.Write("myapp://action", mobileOptions);
// Optimized for mobile scanning
QrOptions mobileOptions = new QrOptions(QrErrorCorrectionLevel.Low, 8);
QrCode appQr = QrWriter.Write("myapp://action", mobileOptions);
' Optimized for mobile scanning
Dim mobileOptions As New QrOptions(QrErrorCorrectionLevel.Low, 8)
Dim appQr As QrCode = QrWriter.Write("myapp://action", mobileOptions)
$vbLabelText   $csharpLabel

Zaawansowane funkcje i integracja

Kompleksowe funkcje IronQR wykraczają poza podstawowe generowanie kodów QR. Biblioteka płynnie integruje się z innymi produktami Iron Software i obsługuje przetwarzanie wsadowe, generowanie dynamiczne oraz integrację z aplikacjami internetowymi.

Aby uzyskać kompletne rozwiązania w zakresie kodów QR, zapoznaj się z naszym samouczkiem dotyczącym generatora kodów QR w języku C#, obejmującym wzorce wdrażania od początku do końca oraz najlepsze praktyki dla Enterprise.

IronQR zapewnia narzędzia i elastyczność niezbędne do profesjonalnego programowania w środowisku .NET, od prostych generatorów po złożone systemy przetwarzania dokumentów. Kompatybilność biblioteki z różnymi platformami zapewnia spójne generowanie kodów QR w systemach Windows, Linux, macOS oraz w środowiskach chmurowych.

Często Zadawane Pytania

Jaki jest najszybszy sposób tworzenia obrazu kodu QR w C#?

Najszybszym sposobem jest użycie metody QrWriter.Write() z IronQR do wygenerowania kodu QR, następnie wywołanie Save() w celu uzyskania obiektu AnyBitmap, a na koniec użycie SaveAs() do eksportowania go w preferowanym formacie obrazu. Wystarczy 5 linijek kodu, aby utworzyć i zapisać kod QR jako plik PNG lub JPEG.

Jakie formaty obrazów są obsługiwane podczas eksportowania kodów QR?

IronQR obsługuje wiele formatów obrazów, w tym JPEG, PNG, BMP, GIF, TIFF, WBMP, WebP i formaty ikon. Metoda Save() zwraca obiekt AnyBitmap, który można eksportować do dowolnego z tych formatów, używając metody SaveAs() z odpowiednim parametrem ImageFormat.

Jak wygenerować prosty kod QR i zapisać go jako plik PNG?

Aby wygenerować kod QR i zapisać go jako PNG, użyj: QrCode myQrCode = QrWriter.Write("twój tekst"); następnie AnyBitmap qrImage = myQrCode.Save(); a na końcu qrImage.SaveAs("filename.png", AnyBitmap.ImageFormat.Png); IronQR zajmuje się całą złożonością generowania kodu QR za ciebie.

Jakie przestrzenie nazw należy zaimportować, aby tworzyć obrazy kodów QR?

Musisz zaimportować dwa przestrzenie nazw: 'using IronQr;' dla funkcjonalności generowania kodów QR oraz 'using IronSoftware.Drawing;' dla możliwości obsługi obrazów. Dzięki temu uzyskasz dostęp do klasy QrWriter i obiektu AnyBitmap używanych w IronQR.

Czy mogę tworzyć kody QR o niestandardowym stylu, czy tylko czarno-białe?

Podczas gdy podstawowe przykłady pokazują standardowe czarno-białe kody QR, klasa QrWriter z IronQR oferuje rozbudowaną funkcjonalność generowania zindywidualizowanych kodów QR. Możesz zapoznać się z zaawansowanymi opcjami stylizacji, korzystając z obszernej dokumentacji API.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 63,676 | Wersja: 2026.4 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronQR
uruchom próbkę obserwuj, jak Twój URL staje się kodem QR.