IRONSOFTWAREHOME

Jak odczytać typ kodu QR w języku C#

Curtis Chau
Curtis Chau
Updated: 9 maja 2026

Identyfikuj format dowolnego zeskanowanego kodu QR w czasie wykonywania. Przeczytaj QrResult.QrType, aby wykryć simbologię i zbudować logikę przetwarzania uwzględniającą typ dla różnych źródeł danych.

Gdy aplikacja akceptuje kody QR z wielu źródeł, format nie zawsze jest przewidywalny. Platforma logistyczna może otrzymywać standardowe kody QR z etykiet wysyłkowych oraz kompaktowe kody Micro QR z metek produktów. System przetwarzania dokumentów może skanować kody osadzone w plikach PDF oraz te wydrukowane na nośnikach fizycznych. Odczytanie QrResult.QrType daje aplikacji możliwość widoczności, który format został wykryty, co umożliwia weryfikację danych wejściowych, kierowanie danych do odpowiedniego handlera lub rejestrowanie nieobsługiwanych formatów do przeglądu.

W niniejszym przewodniku pokazano, jak pobrać format kodu QR z wyników skanowania przy użyciu biblioteki IronQR. Programiści, którzy jeszcze nie skanowali kodu QR, powinni najpierw zapoznać się z przewodnikiem Odczytywanie kodów QR z obrazu.

Szybki start: Odczytaj kod QR Typ

Załaduj obraz, zeskanuj go za pomocą QrReader i uzyskaj dostęp do wykrytego formatu.

  1. 1Install IronQR with NuGet Package Manager

    PM > Install-Package IronQR

  2. 2Skopiuj i uruchom ten fragment kodu.

    var input = new QrImageInput("qr-code.png");
    var results = new QrReader().Read(input);
    Console.WriteLine(results.First().QrType);
    C#
  3. 3Wdrożenie do testowania w środowisku produkcyjnym

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

Jak odczytać typ kodu QR?

Aby odczytać typ kodu QR, załaduj obraz do QrImageInput, przekaż go do QrReader.Read() i uzyskaj dostęp do QrType na zwróconym QrResult. Właściwość zwraca wartość wyliczeniową QrEncoding identyfikującą wykrytą simbologię.

Dane wejściowe

Poniższy kod QR zawiera adres https://ironsoftware.com i zostanie zeskanowany w celu określenia jego typu.

Kodowanie kodu QR https://ironsoftware.com wykorzystywane jako dane wejściowe do wykrywania typu
using IronQr;
using System.Drawing;
using System.Linq;

// Import an image containing a QR code
var inputImage = Image.FromFile("sample.jpg");

// Load the asset into a QrImageInput object
QrImageInput imageInput = new QrImageInput(inputImage);

// Create a QR Reader object
QrReader reader = new QrReader();

// Read the input and get all embedded QR codes
IEnumerable<QrResult> results = reader.Read(imageInput);

// Display the type of the first QR code found
Console.WriteLine($"The QR type is {results.First().QrType}");

QrType zwraca wartość wyliczeniową QrEncoding taką jak QrEncoding.QRCode, QrEncoding.MicroQRCode lub QrEncoding.RMQRCode. To sprawia, że jest bezpieczne do bezpośredniego użycia w instrukcji switch bez analizowania lub porównywania ciągów.

Wynik

Wynik wyświetlany w konsoli pokazujący wykryty typ kodu QR

Jak przekierować przetwarzanie według formatu kodu QR?

Gdy aplikacja odbiera kody QR z wielu źródeł, nie każde dane wejściowe będą miały ten sam format. Użyj switch na QrResult.QrType, aby kierować każdy wykryty kod do odpowiedniego handlera na podstawie jego wartości QrEncoding. Dzięki temu logika specyficzna dla danego formatu pozostaje odizolowana, a dodawanie nowych gałęzi formatów jest proste.

Korzystając z tego samego kodu QR, co powyżej:

using IronQr;
using IronQr.Enum;
using System.Drawing;

// Import an image containing QR codes
var inputImage = Image.FromFile("sample.jpg");

// Load the asset into a QrImageInput object
QrImageInput imageInput = new QrImageInput(inputImage);

// Create a QR Reader object
QrReader reader = new QrReader();

// Read all embedded QR codes from the image
IEnumerable<QrResult> results = reader.Read(imageInput);

// Route processing based on the detected QR code format
foreach (QrResult result in results)
{
    switch (result.QrType)
    {
        case QrEncoding.QRCode:
            Console.WriteLine($"Standard QR Code: {result.Value}");
            break;
        case QrEncoding.MicroQRCode:
            Console.WriteLine($"Micro QR Code: {result.Value}");
            break;
        case QrEncoding.RMQRCode:
            Console.WriteLine($"RMQR Code: {result.Value}");
            break;
        default:
            Console.WriteLine($"Other format ({result.QrType}): {result.Value}");
            break;
    }
}

Każdy case celuje w konkretne wartość QrEncoding. Gałąź QrType przechwytuje każdy format, który nie jest explicite obsługiwany, dzięki czemu pętla nigdy nie kończy się w cicho w przypadku niespodziewanych danych wejściowych. Dodaj więcej przypadków, ponieważ aplikacja musi obsługiwać dodatkowe formaty.

Wynik

Wynik wyświetlany w konsoli pokazujący wynik routingu opartego na formacie dla każdego wykrytego kodu QR

Co zwraca QrResult.QrType?

QrResult.QrType jest właściwością enum QrEncoding każdego QrResult, która identyfikuje simbologię wykrytą przez skaner. Zapełniane jest automatycznie podczas QrReader.Read() i nie wymaga dodatkowej konfiguracji. Dodaj using IronQr.Enum;, aby używać wartości QrEncoding bezpośrednio w switch.

WartośćOpis
QrEncoding.QRCodeStandardowy kod QR, najpopularniejszy format stosowany we wszystkich branżach
QrEncoding.MicroQRCodeWersja kompaktowa przeznaczona do małych powierzchni o ograniczonym obszarze druku
QrEncoding.RMQRCodeProstokątny mikro kod QR zoptymalizowany pod kątem wąskich, wydłużonych kształtów etykiet (rMQR)

QrType jest tylko do odczytu i odzwierciedla to, co skaner wykrył w obrazie. Jego wartość nie zależy od tego, w jaki sposób został wygenerowany kod QR.


Jakie są typowe przypadki użycia dla QrType?

  • Logistyka i wysyłka: Wykrywanie, czy etykieta zawiera standardowy kod QR, czy kompaktowy kod Micro QR, i kierowanie każdego z nich do odpowiedniego procesu przetwarzania.
  • Przetwarzanie dokumentów: Sprawdź, czy zeskanowany dokument ma oczekiwany format, zanim wyodrębnisz jego zawartość do dopasowania rekordów.
  • Kioski obsługujące wiele formatów: Akceptują różne formaty kodów QR w jednym punkcie i przekazują każdy z nich do odpowiedniego modułu przetwarzającego bez konieczności ręcznej interwencji.
  • Audyt i zgodność: Rejestruj typ symboliki wraz z odkodowanymi wartościami, aby stworzyć weryfikowalny zapis formatów wejściowych w różnych partiach.
  • Kontrola jakości: Sprawdź, czy wygenerowane kody QR skanują się jako zamierzony typ, potwierdzając, że wynik jest zgodny ze specyfikacją.

Więcej informacji na temat odczytywania danych z kodów QR po wykryciu ich typu można znaleźć w przewodniku Odczytywanie wartości kodów QR oraz w pełnym zestawie funkcji IronQR.

Często Zadawane Pytania

Jaki jest cel QrResult.QrType w IronQR?

QrResult.QrType w IronQR służy do wykrycia symbologii zeskanowanego kodu QR, umożliwiając inteligentne przetwarzanie oparte na formacie w aplikacjach C#.

Jak mogę odczytać typ kodu QR używając IronQR?

Aby odczytać typ kodu QR używając IronQR, można użyć metody QrReader.Read() na QrImageInput. To pozwoli na dostęp do QrResult.QrType, który dostarcza informacje o konkretnym typie zeskanowanego kodu QR.

Dlaczego wykrywanie typu kodu QR jest ważne w aplikacjach C#?

Wykrywanie typu kodu QR jest ważne w aplikacjach C# ponieważ pozwala programistom inteligentnie przetwarzać kody QR w zależności od ich formatu, zapewniając odpowiednią obsługę i ekstrakcję danych.

Czy IronQR może obsługiwać różne symbologie kodów QR?

Tak, IronQR może obsługiwać różne symbologie kodów QR, używając QrResult.QrType do identyfikacji i dokładnego przetwarzania różnych typów kodów QR.

Czym jest rola QrReader.Read() w skanowaniu kodów QR?

QrReader.Read() jest metodą w IronQR, która skanuje kody QR z QrImageInput, umożliwiając pobranie typu kodu QR i innych istotnych informacji do dalszego przetwarzania.

Czy możliwe jest przetwarzanie wielu typów kodów QR przy użyciu IronQR?

Tak, IronQR pozwala na przetwarzanie wielu typów kodów QR, korzystając z właściwości QrResult.QrType do identyfikacji i obsługi każdego kodu QR zgodnie z jego symbologią.

Jakie są korzyści z używania IronQR do odczytywania kodów QR w C#?

Użycie IronQR do odczytywania kodów QR w C# przynosi korzyści, takie jak dokładne wykrywanie typów kodów QR, inteligentne przetwarzanie oparte na formacie oraz bezproblemowa integracja z aplikacjami C#.

Jak IronQR poprawia wydajność przetwarzania kodów QR?

IronQR poprawia wydajność przetwarzania kodów QR, zapewniając narzędzia takie jak QrReader.Read() i QrResult.QrType, które upraszczają identyfikację i obsługę różnych typów kodów QR w projektach C#.

How does QrResult.QrType aid in QR code validation?

QrResult.QrType aids in QR code validation by confirming that a scanned QR code matches the expected format before processing its data, ensuring data integrity and compatibility.

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ęczników.

...
Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 74,386Wersja:2026.9właśnie wydany

Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Biblioteka C# NuGet dla plików PDF
Zainstaluj za pomocą NuGet

Wersja: 2026.9

PM > Install-Package IronQR
nuget.org/packages/IronQR/
  1. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem Myszy na Odwołania, Zarządzaj pakietami NuGet
  2. Wybierz Przeglądaj i wyszukaj "IronQR"
  3. Wybierz pakiet i zainstaluj
DLL PDF dla C#
Pobierz DLL

Wersja: 2026.9

  1. Pobierz i rozpakuj IronQR do lokalizacji, takiej jak ~/Libs w katalogu Solution
  2. W Eksploratorze rozwiązań Visual Studio kliknij prawym przyciskiem myszy Odwołania. Wybierz Przeglądaj, "IronQR.dll"

Licencje od $999

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta