C# Dilinde QR Kod Türü Nasıl Okunur
Çalışma zamanında taranmış herhangi bir QR kodunun formatını belirleyin. QrResult.QrType'yı okuyarak simgolojiyi tespit edin ve çeşitli giriş kaynakları için tür farkındalığına sahip işleme mantığı oluşturun.
Bir uygulama birden fazla kaynaktan gelen QR kodlarını kabul ettiğinde, format her zaman tahmin edilemez. Lojistik bir platform, nakliye etiketlerinden gelen standart QR kodları ile ürün etiketlerinden gelen kompakt Mikro QR kodlarını alabilir. Bir belge işleme sistemi, fiziksel medyada basılı olanlarla birlikte PDF'lere gömülü kodları tarayabilir. QrResult.QrType'yı okumak, uygulamaya hangi formatın tespit edildiği hakkında görünürlük sağlar; bu da girişi doğrulama, verileri doğru işleyiciye yönlendirme veya desteklenmeyen formatları inceleme için kaydetme olanağı tanır.
Bu kılavuz, tarama sonuçlarından QR kodu formatını nasıl alacağınızı IronQR kütüphanesini kullanarak gösterir. Henüz bir QR kodu taramamış olan geliştiriciler ilk önce Görüntüden QR Kodlarını Okuma rehberiyle başlamalıdır.
Hızlı Başlangıç: QR Kod Türü Okuma
Bir görüntü yükleyin, QrReader ile tarayın ve tespit edilen formata erişin.
-
NuGet Paket Yöneticisi ile https://www.nuget.org/packages/IronQR yükleyin
PM > Install-Package IronQR -
Bu kod parçasını kopyalayıp çalıştırın.
var input = new QrImageInput("qr-code.png"); var results = new QrReader().Read(input); Console.WriteLine(results.First().QrType); -
Canlı ortamınızda test etmek için dağıtın
Bugün projenizde IronQR kullanmaya başlayın ücretsiz deneme ile
Minimal İş Akışı (5 adımda)
- QR kod türlerini okumak için IronQR C# kütüphanesini indirin
- Görseli yükleyin ve bir
QrImageInputiçine alın QrReaderörneği oluşturun ve girişleReadçağrısı yapın- Tespit edilen formata
QrResult.QrTypeüzerinden erişin QrEncodingüzerinde birswitchkullanarak işlemeyi formatla yönlendirin
QR Kod Türünü Nasıl Okurum?
Bir QR kodunun türünü okumak için, görüntüyü bir QrImageInput'a yükleyin, QrReader.Read()'a aktarın ve döndürülen QrResult üzerinde QrType erişin. Bu özellik, tespit edilen simgolojiyi tanımlayan bir QrEncoding enum değerini döndürür.
Girdi
Aşağıdaki QR kodu, https://ironsoftware.com adresini kodlar ve türünü çıkarmak için taranacaktır.
:path=/static-assets/qr/content-code-examples/how-to/read-qr-code-type.cs
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}");
Imports IronQr
Imports System.Drawing
Imports System.Linq
' Import an image containing a QR code
Dim inputImage As Image = Image.FromFile("sample.jpg")
' Load the asset into a QrImageInput object
Dim imageInput As New QrImageInput(inputImage)
' Create a QR Reader object
Dim reader As New QrReader()
' Read the input and get all embedded QR codes
Dim results As IEnumerable(Of QrResult) = reader.Read(imageInput)
' Display the type of the first QR code found
Console.WriteLine($"The QR type is {results.First().QrType}")
QrType, QrEncoding enum değeri olarak QrEncoding.QRCode, QrEncoding.MicroQRCode veya QrEncoding.RMQRCode gibi değerler döndürür. Bu, doğrudan bir switch ifadesinde ayrıştırma veya dizi karşılaştırma yapmadan kullanmayı güvenli hale getirir.
Çıktı
QR Kod Formatına Göre İşlemeyi Nasıl Yönlendiririm?
Bir uygulama birden fazla kaynaktan QR kodları aldığında, her giriş aynı formatta olmayacaktır. Her tespit edilen kodu, QrEncoding değerine göre doğru işleyiciye yönlendirmek için QrResult.QrType üzerinde bir switch kullanın. Bu, formata özgü mantığı izole eder ve yeni format dalları eklemeyi kolaylaştırır.
Yukarıdaki aynı giriş QR kodunu kullanarak:
:path=/static-assets/qr/content-code-examples/how-to/read-qr-code-type-all.cs
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;
}
}
Imports IronQr
Imports IronQr.Enum
Imports System.Drawing
' Import an image containing QR codes
Dim inputImage As Image = Image.FromFile("sample.jpg")
' Load the asset into a QrImageInput object
Dim imageInput As New QrImageInput(inputImage)
' Create a QR Reader object
Dim reader As New QrReader()
' Read all embedded QR codes from the image
Dim results As IEnumerable(Of QrResult) = reader.Read(imageInput)
' Route processing based on the detected QR code format
For Each result As QrResult In results
Select Case result.QrType
Case QrEncoding.QRCode
Console.WriteLine($"Standard QR Code: {result.Value}")
Case QrEncoding.MicroQRCode
Console.WriteLine($"Micro QR Code: {result.Value}")
Case QrEncoding.RMQRCode
Console.WriteLine($"RMQR Code: {result.Value}")
Case Else
Console.WriteLine($"Other format ({result.QrType}): {result.Value}")
End Select
Next
Her case belirli bir QrEncoding değerini hedefler. default dalı, açıkça ele alınmayan herhangi bir formatı yakalar, böylece döngü beklenmedik bir girişi sessizce başarısız hale getirmez. Uygulamanın ek formatları desteklemesi gerektiğinde daha fazla durum ekleyin.
Çıktı
QrResult.QrType Ne Döndürür?
QrType, tarayıcı tarafından tespit edilen simgolojiyi tanımlayan her QrResult üzerinde bir QrEncoding enum özelliğidir. QrReader.Read() sırasında otomatik olarak doldurulur ve ek yapılandırma gerektirmez. using IronQr.Enum; ekleyerek bir switch içinde QrEncoding değerlerini doğrudan kullanın.
| Değer | Tanım |
|---|---|
QrEncoding.QRCode |
Tüm endüstrilerde yaygın olarak kullanılan standart QR kod |
QrEncoding.MicroQRCode |
Sınırlı baskı alanı olan küçük yüzeyler için tasarlanmış kompakt varyant |
QrEncoding.RMQRCode |
Dar, uzun etiket şekilleri (rMQR) için optimize edilmiş dikdörtgen Mikro QR kod |
QrType salt okunurdur ve tarayıcının görüntüde tespit ettiğini yansıtır. Değeri, QR kodunun nasıl oluşturulduğuna bağlı değildir.
QrType için Yaygın Kullanım Durumları Nelerdir?
- Lojistik ve nakliye: Bir etiketin standart QR kodu veya kompakt Mikro QR taşıyıp taşımadığını algılayın ve her birini doğru ayrıştırma boru hattına yönlendirin.
- Belge işleme: Taranan belgenin beklenen formatı içerdiğini doğrulayın, ardından kayıt eşleştirme için değerini çıkarın.
- Çok formatlı kiosklar: Tek bir istasyonda farklı QR formatlarını kabul edin ve her birini manuel müdahale olmadan uygun işleyiciye gönderin.
- Denetim ve uyumluluk: Girdi formatlarının toplu partilerdeki doğrulanabilir kaydını oluşturmak için çözümlenmiş değerlerle birlikte semboloji türünü kaydedin.
- Kalite güvence: Üretilen QR kodlarının istenen tipte geri tarandığını doğrulayın, çıktının spesifikasyonu karşıladığını onaylayın.
Tip tespit edildikten sonra QR kodu verilerini okumak üzerine daha fazla bilgi için QR Kod Değerini Oku kılavuzuna ve tam IronQR özellik setine bakın.

