QR Kodu .NET Core Üretici & Okuyucu | IronQR
.NET Core'da bir QR kodu üreticisi oluşturmak, doğru kütüphaneyi seçtiğinizde basittir. QR kodu üreticisi için gereksinimleri değerlendirirken, geliştiriciler kullanım kolaylığı ile ileri düzey özellikler arasında bir denge arar. ASP.NET Core web uygulamaları veya konsol araçları oluştururken, geliştiriciler temel QR kodu oluşturma işleminden ileri düzey özelleştirmeye kadar her şeyi yöneten bir kütüphaneye ihtiyaç duyuyor.
IronQR, metin dizelerini, URL'leri ve Japon Unicode metinlerini kodlamayı destekleyen .NET Core için güçlü bir çözüm sunar. Bazıları başlangıçta esnek MIT lisansı ile bilinen gibi QRCoder kitaplığı gibi bir .NET açık kaynak kütüphanesi arayabilirken, IronQR, makine öğrenimi yetenekleri ve özel destek ile kurumsal düzeyde bir alternatif sunar.
Bu eğitici, QR kodları oluşturmayı, hata düzeltme seviyelerini ayarlamayı ve makine öğrenimi destekli algılama kullanarak mevcut kodları okumayı, hepsini .NET Core projelerinizde nasıl yapabileceğinizi gösterir.
Bugün IronQR ile ücretsiz bir deneme kullanarak başlayın.
.NET Core'da bir QR Kodu Kitaplığı Nasıl Kurulur?
Başlamak için Visual Studio'yu açın ve yeni bir proje başlatmak için oluştur düğmesine tıklayın. Bir proje adı atadıktan sonra, kütüphaneyi NuGet Paket Yöneticisi aracılığıyla kurmak saniyeler sürer. Bazı geliştiriciler QRCoder NuGet paketini arayabilir; ancak, Paket Yöneticisi Konsolunda aşağıdaki komutu çalıştırarak IronQR çerçevesini kurabilirsiniz:
Install-Package IronQR
Alternatif olarak, "IronQR" aratarak ve kur düğmesine tıklayarak NuGet Paket Yöneticisi UI'yi kullanabilirsiniz. Kütüphane, modern web geliştirme ve çok platformlu projeler için ideal olan .NET Core 3.x, .NET 5, 6, 7, 8, 9 ve 10 ile uyumlu bir .NET uygulaması sağlar.
Kurulumdan sonra, dosyanizin en ustune gerekli using yonergelerini ekleyin. IronQR, IronSoftware.Drawing ile platformlar arasi görüntü işleme sunar ve bu sayede .NET 6 ve sonrasi surumlerde platforma ozel bagliligi olan System.Drawing.Common gibi bagimliliklarin gereksizligini kaldirir.
Kurulumu doğrulamak icin projenizin paket referanslarini .csproj dosyasinda kontrol edebilir veya NuGet paketinin Paket Yonetici konsolu ciktilarinda gorunup gorunmedigini teyit edebilirsiniz. Kurulduktan hemen sonra IronQR API referansı kullanılabilir hale gelir.
QR Kodu Nasıl Üretilir?
QrWriter sınıfı, genellikle kullanışlı genişletme yöntemleri ile birlikte kullanılarak, QR kodu oluşturmayı basit hale getirir. İşte yalnızca birkaç satır kodla bir QR kodu oluşturmak için üst düzey ifadeler kullanılarak yapılmış bir tam örneğin kaynak kodu:
using IronQr;
using IronSoftware.Drawing;
// Generate a QR code from input text
QrCode qrcode = QrWriter.Write("https://ironsoftware.com");
// Save as PNG image
AnyBitmap qrImage = qrcode.Save();
qrImage.SaveAs("website-qr.png");
using IronQr;
using IronSoftware.Drawing;
// Generate a QR code from input text
QrCode qrcode = QrWriter.Write("https://ironsoftware.com");
// Save as PNG image
AnyBitmap qrImage = qrcode.Save();
qrImage.SaveAs("website-qr.png");
Imports IronQr
Imports IronSoftware.Drawing
' Generate a QR code from input text
Dim qrcode As QrCode = QrWriter.Write("https://ironsoftware.com")
' Save as PNG image
Dim qrImage As AnyBitmap = qrcode.Save()
qrImage.SaveAs("website-qr.png")
Çıktı

QrWriter.Write() metodu, verileri QR sembolunun ham modullerini (siyah ve beyaz kareler) iceren QrCodeData olarak isler. IronQR, giriş metninin sayısal veriler, alfanümerik metin dizeleri veya bayt dizileri için etkili bir şekilde kodlanmasını sağlamak için dahili yük üreteçlerini kullanır.
AnyBitmap sinifi, Windows, macOS ve Linux'ta değişiklik yapmadan calisan platformlar arasi görüntü kaydetme imkani saglayan IronSoftware.Drawing sunar. Çıkışı kullanım durumunuza bağlı olarak PNG, JPEG veya desteklenen diğer formatlarda kaydedebilirsiniz.
Çalışan bir gösterim için, ek yapılandırma seçeneklerinin temel oluşturma iş akışıyla birlikte gösterildiği QR kodu üretme örneği sayfasına bakın.
Hata Düzeltme Seviyeleri Nedir ve Neden Önemlidir?
Hata düzeltme, bir QR sembolünün taranabilir kalırken ne kadar hasar alabileceğini belirler. Bu, marka tanıtımı ve dayanıklılık gibi isteğe bağlı ileri düzey özelliklerden biridir. QR kodu standardı (ISO/IEC 18004), her biri veri kapasitesini dayanıklılık ile takas eden dört hata düzeltme seviyesini tanımlar.
| Seviye | Veri Kurtarma | En İyi Kullanım Amacı |
|---|---|---|
| L (Düşük) | ~7% | Temiz dijital görüntüler |
| M (Orta) | ~15% | Genel amaçlı kullanım |
| Q (Çeyrek) | ~25% | Basılı materyaller |
| H (Yüksek) | ~30% | Zorlayıcı çevreler, logo üst kaplamaları |
QrOptions kullanarak hata düzeltmeyi yapılandırın:
using IronQr;
using IronSoftware.Drawing;
// Configure with high error correction level
var options = new QrOptions(QrErrorCorrectionSeviye.High, 20);
// Generate QR code with options
QrCode qrcode = QrWriter.Write("Product-12345", options);
AnyBitmap qrImage = qrcode.Save();
qrImage.SaveAs("product-qr.png");
using IronQr;
using IronSoftware.Drawing;
// Configure with high error correction level
var options = new QrOptions(QrErrorCorrectionSeviye.High, 20);
// Generate QR code with options
QrCode qrcode = QrWriter.Write("Product-12345", options);
AnyBitmap qrImage = qrcode.Save();
qrImage.SaveAs("product-qr.png");
Imports IronQr
Imports IronSoftware.Drawing
' Configure with high error correction level
Dim options As New QrOptions(QrErrorCorrectionSeviye.High, 20)
' Generate QR code with options
Dim qrcode As QrCode = QrWriter.Write("Product-12345", options)
Dim qrImage As AnyBitmap = qrcode.Save()
qrImage.SaveAs("product-qr.png")
QR Çıkış

İkinci parametre, QR kodunun boyutunu ve veri kapasitesini kontrol eden izin verilen maksimum sürüm numarasını belirtir. Daha yüksek hata düzeltme, bir logo görüntüsü eklerken veya fiziksel aşınma senaryolarında esastır.
Bir QR kodunun üzerine bir logo eklemeyi planladığınızda her zaman H Seviyesini kullanın. Ekstra yedeklilik, logo tarafından gizlenen modülleri telafi ederek kodun taranabilir kalmasını sağlar. IronQR hata düzeltme belgeleri, sürüm seçiminin veri kapasitesi ve düzeltme seviyesi ile nasıl etkileşimde bulunduğunu açıklar.
Logolar ve Renklerle QR Kodunun Görünüşünü Nasıl Özelleştirirsiniz?
IronQR'nin QrStyleOptions ile marka hizalı QR kodu oluşturma ile özel renkler, boyutlar ve gömülü logolar mümkündür. Bu, pazarlama materyalleri, ürün ambalajı ve görsel tutarlılığın önemli olduğu etkinlik biletleri için özellikle kullanışlıdır.
using IronQr;
using IronSoftware.Drawing;
var styleOptions = new QrStyleOptions
{
Dimensions = 300,
Margins = 10,
Color = Color.DarkBlue,
Logo = new QrLogo { Bitmap = AnyBitmap.FromFile("company-logo.png") }
};
QrCode qrcode = QrWriter.Write("https://yourcompany.com");
AnyBitmap qrImage = qrcode.Save(styleOptions);
qrImage.SaveAs("branded-qr.png");
using IronQr;
using IronSoftware.Drawing;
var styleOptions = new QrStyleOptions
{
Dimensions = 300,
Margins = 10,
Color = Color.DarkBlue,
Logo = new QrLogo { Bitmap = AnyBitmap.FromFile("company-logo.png") }
};
QrCode qrcode = QrWriter.Write("https://yourcompany.com");
AnyBitmap qrImage = qrcode.Save(styleOptions);
qrImage.SaveAs("branded-qr.png");
Imports IronQr
Imports IronSoftware.Drawing
Dim styleOptions As New QrStyleOptions With {
.Dimensions = 300,
.Margins = 10,
.Color = Color.DarkBlue,
.Logo = New QrLogo With {.Bitmap = AnyBitmap.FromFile("company-logo.png")}
}
Dim qrcode As QrCode = QrWriter.Write("https://yourcompany.com")
Dim qrImage As AnyBitmap = qrcode.Save(styleOptions)
qrImage.SaveAs("branded-qr.png")
Tarzlı QR Kodu

Dimensions özelliği, piksel cinsinden cikis görüntü boyutunu ayarlar. Margins özelliği, tarayicilarin sembol sinirini dogru bir sekilde tanimasi gereken QR kodunun etrafindaki bos sinir olan sessizlik alanini kontrol eder. QR kod özelleştirme kılavuzu, arka plan rengi ve modül şekli seçenekleri dahil ek stil özelliklerini kapsar.
Bir logo gömüyorsanız, QR kodunun toplam alanının %30'unu geçmemesine dikkat edin. Bu eşiğin aşılması, H Düzeyi düzeltme seviyesinde bile okunabilirliği zayıflatabilir. Özelleştirme sonrası birden fazla QR tarayıcı uygulamasıyla test etmek iyi bir uygulamadır.
ASP.NET Core'da QR Kodları Nasıl Oluşturulur?
ASP.NET Core'ye QR kod oluşturma entegrasyonu, Model Görünüm Denetleyici modelini takip eder. İste bir HomeController sınıf uygulamasi, bir eylem metodundan dogrudan bir QR kodu görüntüsu donduren:
using IronQr;
using IronSoftware.Drawing;
using Microsoft.AspNetCore.Mvc;
namespace Examples
{
public class HomeController : Controller
{
public IActionResult GenerateQR(string content)
{
QrCode myQr = QrWriter.Write(content);
AnyBitmap qrImage = myQr.Save();
byte[] imageBytes = qrImage.ExportBytes();
return File(imageBytes, "image/png");
}
}
}
using IronQr;
using IronSoftware.Drawing;
using Microsoft.AspNetCore.Mvc;
namespace Examples
{
public class HomeController : Controller
{
public IActionResult GenerateQR(string content)
{
QrCode myQr = QrWriter.Write(content);
AnyBitmap qrImage = myQr.Save();
byte[] imageBytes = qrImage.ExportBytes();
return File(imageBytes, "image/png");
}
}
}
Imports IronQr
Imports IronSoftware.Drawing
Imports Microsoft.AspNetCore.Mvc
Namespace Examples
Public Class HomeController
Inherits Controller
Public Function GenerateQR(content As String) As IActionResult
Dim myQr As QrCode = QrWriter.Write(content)
Dim qrImage As AnyBitmap = myQr.Save()
Dim imageBytes As Byte() = qrImage.ExportBytes()
Return File(imageBytes, "image/png")
End Function
End Class
End Namespace
Bu uç nokta, QR kodu verilerini bir parametre olarak kabul eder ve oluşturulan PNG görüntüsünü doğrudan döndürür. Bu yaklaşım, hem ASP.NET Core Web API projeleri hem de Razor görünümleri ile çalışır.
Uretim ASP.NET Core uygulamalari icin, CPU yukunu azaltmak icin IMemoryCache veya IDistributedCache kullanarak sık oluşturulan QR kodlarini önbellege almayı deneyin. Statik URL'ler, ürün tanımlayıcıları veya etkinlik bağlantıları için QR kodları istekler arasında değişmez ve önbelleğe almak için ideal adaylardır.
IronQR'yi Minimal API uç noktasına da entegre edebilirsiniz. ASP.NET Core entegrasyon kılavuzu, bağımlılık enjeksiyonu modelleri ve Blazor bileşeninden QR kodu görüntü servis etme de dahil olmak üzere eksiksiz bir örnek sunar.
IronQR'nin lisans anahtarini Program.cs 'de en ust duzey ifade deseni kullanarak kayıt etmek başlangic konfigürasyonunu temiz tutar:
using IronQr;
IronQr.License.LicenseKey = "YOUR-LICENSE-KEY";
using IronQr;
IronQr.License.LicenseKey = "YOUR-LICENSE-KEY";
Imports IronQr
IronQr.License.LicenseKey = "YOUR-LICENSE-KEY"
Herhangi bir IronQR yöntemini çağırmadan önce lisans anahtarını ayarlayın. Geliştirme sırasında, IronQR lisanslama sayfasından temin edilen ücretsiz deneme anahtarını uygulayabilirsiniz.
Japon Unicode Metni Nasıl Kodlanır?
IronQR, standart kodlamaya göre daha az veri bölümü kullanarak Japon unicode karakterlerini verimli bir şekilde kodlayan Kanji modu aracılığıyla Japon Unicode metni kodlamayı destekler. Bu, aynı içerik için QR kodunun versiyonunu (boyutunu) küçültür ve daha hızlı taranan daha az karmaşık bir sembol üretir.
using IronQr;
using IronSoftware.Drawing;
// Generate QR that encodes Japanese Unicode text
QrCode japaneseQr = QrWriter.Write("こんにちは世界");
AnyBitmap qrImage = japaneseQr.Save();
qrImage.SaveAs("japanese-qr.png");
using IronQr;
using IronSoftware.Drawing;
// Generate QR that encodes Japanese Unicode text
QrCode japaneseQr = QrWriter.Write("こんにちは世界");
AnyBitmap qrImage = japaneseQr.Save();
qrImage.SaveAs("japanese-qr.png");
Imports IronQr
Imports IronSoftware.Drawing
' Generate QR that encodes Japanese Unicode text
Dim japaneseQr As QrCode = QrWriter.Write("こんにちは世界")
Dim qrImage As AnyBitmap = japaneseQr.Save()
qrImage.SaveAs("japanese-qr.png")
Çıktı

Kütüphane, Japon karakterlerini algıladığında Kanji modunu otomatik olarak seçer ve veri kapasitesini optimize eder, veri segmentlerinin elle yapılandırılmasına gerek kalmaz. Bu, Japonca konuşan kullanıcıları hedefleyen uygulamalar için önemlidir, örneğin e-ticaret platformları, restoran menüleri veya seyahat bilgi kiosku gibi.
Kanji modu, Shift JIS karakter kümesinden karakterleri kodlar. Uygulamanız aynı stringde hem Japonca hem Latin metin işliyorsa, IronQR mod değişikliğini dahili olarak yönetir ve her segment için en uygun kodlamayı seçer. .NET'te uluslararasılaştırma en iyi uygulamaları için, Microsoft uluslararasılaştırma belgeleri karakter kodlama hakkında yararlı bir bağlam sunar.
QR Kodlarını Nasıl Makine Öğrenimiyle Okursunuz?
IronQR, makine öğrenimi destekli QR okuyucusu ile ayırt edilir. ML modeli, açılardan veya kısmen engellenmiş görüntülerden QR kodları okurken bile yüksek doğruluk sağlar - bu, birçok açık kaynak alternatifinde kullanılan geleneksel eşik bazlı algılama algoritmalarına karşı önemli bir avantajdır.
using IronQr;
using IronSoftware.Drawing;
// Load image containing QR code
AnyBitmap inputBmp = AnyBitmap.FromFile("scanned-document.png");
QrImageInput imageInput = new QrImageInput(inputBmp);
// Read with ML-powered detection
QrReader reader = new QrReader();
IEnumerable<QrResult> results = reader.Read(imageInput);
foreach (var result in results)
{
Console.WriteLine($"Found: {result.Value}");
}
using IronQr;
using IronSoftware.Drawing;
// Load image containing QR code
AnyBitmap inputBmp = AnyBitmap.FromFile("scanned-document.png");
QrImageInput imageInput = new QrImageInput(inputBmp);
// Read with ML-powered detection
QrReader reader = new QrReader();
IEnumerable<QrResult> results = reader.Read(imageInput);
foreach (var result in results)
{
Console.WriteLine($"Found: {result.Value}");
}
Imports IronQr
Imports IronSoftware.Drawing
' Load image containing QR code
Dim inputBmp As AnyBitmap = AnyBitmap.FromFile("scanned-document.png")
Dim imageInput As New QrImageInput(inputBmp)
' Read with ML-powered detection
Dim reader As New QrReader()
Dim results As IEnumerable(Of QrResult) = reader.Read(imageInput)
For Each result In results
Console.WriteLine($"Found: {result.Value}")
Next
QR Kod Okuma Çıktısı

QrResult nesnesi, cozulmus degeri ve konum metaverilerini icerir, bu da tespit edilen QR kodu alanini kullanıcı arayuzü ya da belge işleme boru hatlarinda vurgulamak icin kullanilabilir. Bu yetenek, IronQR'yi belge işleme ve envanter yönetim sistemleri için ideal hale getirir.
ML modeli tamamen cihaz üzerinde çalışır, bulut API çağrılarına ihtiyaç duymaz, bu da onu izole ortamlar ve çevrimdışı uygulamalar için uygun hale getirir. ZXing.NET gibi geleneksel CV tabanlı dedektörler temiz, önden gelen kodlar için iyi çalışır ancak genellikle parlama, döndürme veya zarar görme gibi gerçek dünya koşullarıyla mücadele eder. IronQR'nin ML yaklaşımı bu senaryoları güvenilir bir şekilde işler.
Toplu belge işleme için, okuyucuya ardışık olarak birden fazla görüntü geçirebilir ve tüm sonuçları toplayabilirsiniz. QR kod okuma belgeleri, statik görüntü dosyalarına ek olarak PDF sayfalarından ve kamera akışlarından okumayı kapsar.
Çapraz Platform Desteği Nasıl Çalışır?
.NET 6+ 'da platformlar arasi kullanim icin kaldirilmis System.Drawing.Common'e bagimli cözümlerden farkli olarak IronQR, gerçek çoklu-platform projeleri icin IronSoftware.Drawing kullanir. Kodunuz Windows, macOS, Linux, iOS ve Android üzerinde tutarlı bir şekilde çalışır. Çoklu platform projeleri için, SkiaSharp alternatifleri gereksizdir - IronQR platform soyutlamasını dahili olarak yönetir.
.NET çapraz platform belgeleri, .NET 10 için daha geniş platform uyumluluk hikayesini açıklar. IronQR, platforma özgü API'lerden tamamen kaçınarak bu ilkelerle uyum sağlar.
IronQR aşağıdaki dağıtım hedeflerini destekler:
- .NET 10, 9, 8, 7, 6 -- tüm modern .NET sürümleri
- .NET Core 3.x -- hala modern .NET'e geçmemiş uygulamalar için
- Xamarin ve MAUI -- mobil uygulama geliştirme için
- Azure Functions ve AWS Lambda -- sunucusuz iş yükleri için
Docker konteynerlerinde çalışırken, standart .NET çalışma zamanı görüntüsü dışında ek sistem paketlerine gerek yoktur. Bu, yerel GDI+ bagimliligi gerektiren kutuphanelerle karsilastirildiginda Dockerfile 'yi basitlestirir. IronQR dağıtım kılavuzu, konteynırlı ve bulut ortamları için yapılandırmayı kapsar.
IronQR'yi Diğer .NET QR Kütüphaneleriyle Nasıl Karşılaştırırız?
Birçok .NET QR kod kütüphanesi mevcut, her biri farklı ödünlerle birlikte gelir. Farklılıkları anlamak, projeniz için doğru aracı seçmenize yardımcı olur.
QRCoder, MIT lisanslı açık kaynaklı bir kütüphanedir. Basit QR kod üretimi için iyi çalışır ancak QR kod okuma yetenekleri veya makine öğrenimi ile güçlendirilmiş algılama içermez. Çıkış seçenekleri, IronQR'nin stilize çıkış desteğiyle karşılaştırıldığında daha sınırlıdır.
ZXing.NET, Java ZXing kütüphanesinin bir C# portudur. Hem okumayı hem de yazmayı destekler ancak hasarlı veya döndürülmüş kodlarla mücadele eden geleneksel bilgisayar görüş tekniklerine dayanır. Çapraz platform görüntü işleme ek yapılandırma gerektirir.
IronQR, tek bir pakette üretim ve okumayı sunar, kurumsal lisanslama ile birlikte özel destek içerir. ML destekli okuyucu, stilize cikti ve IronSoftware.Drawing entegrasyonu, onu üretim uygulamalari icin daha tamamlayici bir cözüm yapar.
Detaylı özellik karşılaştırması için IronQR vs QRCoder karşılaştırması ve IronQR vs ZXing karşılaştırması makalelerine bakın.
Sıradaki Adımlarınız Neler?
IronQR, QR kodlarının .NET Core içinde oluşturulması ve okunması için eksiksiz bir çözüm sunar. Karmaşık yük oluşturucular ve ham modüllerin ve QrCodeData verilerinin montajını otomatik olarak ele alarak, geliştirme döngüsünü basitleştirir. Basit açık kaynaklı kütüphane alternatifine veya isteğe bağlı gelişmiş özelliklere sahip bir sisteme ihtiyaçınız olsun, IronQR'nin çapraz platform mimarisi güvenilir çalışma sağlar.
IronQR ile inşa etmeye devam etmek için bu kaynakları keşfedin:
- IronQR NuGet paketi -- en son kararlı sürümü yükleyin
- IronQR API referansı -- tam sınıf ve yöntem belgeleri
- QR kod örnekleri -- yaygın senaryolar için kopyala-yapıştır hazır kod
- IronQR tutoriallar -- belirli kullanım durumları için adım adım kılavuzlar
- Lisanslama seçenekleri -- projeniz için doğru planı seçin
Ücretsiz denemenize başlayın ve IronQR'nin tam potansiyelini önceden taahhüt olmadan ortaya çıkarmayın.
Sıkça Sorulan Sorular
IronQR kullanarak .NET Core'da QR kodları nasıl oluşturabilirim?
IronQR, temel QR kodu oluşturmanın yanı sıra gelişmiş özelleştirme özellikleri sunan kullanımı kolay bir kütüphane sunarak .NET Core'da QR kodları oluşturmanıza olanak tanır.
IronQR ile QR kodu oluşturma için hangi özelleştirme seçenekleri mevcuttur?
IronQR, QR kodlarınıza logolar eklemek ve hata düzeltme seviyelerini yapılandırmak gibi çeşitli özelleştirme seçenekleri sunar ve bunların özel gereksinimlerinizi karşılamasını sağlar.
IronQR, ASP.NET Core web uygulamalarında QR kodu oluşturmayı yapabilir mi?
Evet, IronQR, ASP.NET Core web uygulamaları ile tamamen uyumlu olup geliştiricilerin projelerine QR kodu oluşturmayı entegre etmelerine olanak tanır.
IronQR ile .NET Core'da QR kodları okuma mümkün mü?
Kesinlikle, IronQR, makine öğrenimi teknolojisini kullanarak yüksek doğrulukta QR kodu okumak için tasarlanmıştır ve kesin tespit ve veri çıkarımı sağlar.
IronQR'u QR kodu oluşturucu arayan geliştiriciler için uygun kılan nedir?
IronQR, kullanım kolaylığı ile gelişmiş özellikler arasında bir denge sunarak, esnek ve güvenilir bir QR kod kütüphanesi arayan geliştiriciler için ideal bir seçimdir.
IronQR'da QR kodu işlemede ileri düzey özellikler var mı?
Evet, IronQR, hata düzeltme yapılandırması yapma, marka unsurları ekleme ve çeşitli QR kodu formatlarını işleme gibi ileri düzey özellikler içerir.
IronQR, QR kodu okuma doğruluğunu nasıl sağlar?
IronQR, makine öğrenimi destekli algoritmalar kullanarak QR kodu okuma doğruluğunu arttırır, zorlayıcı koşullarda bile güvenilir veri yakalama sağlar.



