C# QR Kod Okuyucu (Başlangıç İçin Adım Adım Eğitim)
Bugünün dijital odaklı dünyasında, QR kodlar (Hızlı Yanıt Kodları) fiziksel ve dijital dünyayı nahtsız bir şekilde bağlayarak her yerde bulunmaktadır. Pazarlamadan lojistiğe, finanstan sağlığa kadar QR kodlar, verimli veri alışverişini sağlamak için önemli bir rol oynar.
Bu makalede, C# geliştirme alanına dalarak, IronQR adlı piyasadaki en iyi QR kodu kütüphanelerinden biri olan libr ousted library, geliştiricilerin QR kod tanıma gücünü kullanmalarını, verileri hızlı ve kolay bir şekilde çözmeyi ve çeşitli alanlarda yenilik yapmayı sağlar.
Iron Software'den IronQR, sağlam bir .NET QR kod okuyucu kütüphanesi olarak öne çıkmaktadır. IronQR'nin uygulamalarınıza benzersiz doğruluk ve verimlilikle QR kodlarını çözme yeteneği kazandıran ileri makine öğrenme modeli, zorlu senaryolarda bile mükemmel sonuçlar sunar.
C#'ı IronQR ile Kullanarak QR Kodları Nasıl Okursunuz
- Bir .NET Windows Forms Uygulama şablonu ile bir Visual Studio projesi oluşturun.
- NuGet paket yöneticisinden IronQR kurun.
- AForge kütüphanesini kullanarak kameradan QR kodunu bir görüntü olarak alın.
- IronQR kullanarak QR Kodlarını okuyun.
IronQR, .NET çerçevesinde QR kodu görüntülerini hem taramak hem de üretmek için tasarlanmış premier C# QR kod okuyucu kütüphanesi olarak öne çıkmaktadır. Modern ML teknolojisini kullanarak, IronQR QR kodu okuma işlemini benzeri görülmemiş seviyelere çıkardı.
İster görüntülerden, ister videolardan, ister canlı kamera akışlarından QR kodları tarıyor olun, ML destekli çözüm, bilgilerin hızlı ve güvenilir bir şekilde alınmasını sağlar.
Bu yenilikçi yaklaşım sadece veri çıkarmayı kolaylaştırmakla kalmaz, aynı zamanda güvenliği güçlendirerek gerçek QR kodları ile potansiyel tehditleri ayırt etmenizi sağlar. Kullanıcı dostu API'si ile geliştiriciler, QR kod yeteneklerini .NET projelerine sadece birkaç dakika içinde entegre edebilirler.
IronQR, .NET Core (8, 7, 6, 5 ve 3.1+), .NET Standard (2.0+) ve .NET Framework (4.6.2+) ile sorunsuz bir şekilde entegre olur. Mevcut .NET Core sürümü, Linux, Unix ve macOS gibi istemci işletim sistemlerini desteklerken, mobil uygulamalar geliştirmek için de uyumluluğunu genişletiyor.
Gereksinimler
- Visual Studio: Visual Studio veya başka bir .NET geliştirme ortamının yüklü olduğundan emin olun.
- Uyumlu Kamera: Kameranın cihazınıza bağlı olduğundan emin olun.
- NuGet Paket Yöneticisi: Projenizde paketleri yönetmek için NuGeti kullanabileceğinizden emin olun.
Adım 1: Bir .NET Windows Forms Uygulama şablonu ile bir Visual Studio projesi oluşturun
Kamera video akışlarından veya görüntü dosyalarından QR kod barkodlarını okumak için bir Windows Forms .NET uygulaması oluşturarak başlayalım. Visual Studio'yu açın, Yeni Proje oluşturun ve ardından .NET Windows Forms Uygulama şablonunu seçin.

İleri'ye tıklayın ve proje adını girin.

İstediğiniz .NET Sürümlerini seçin ve ardından Oluştur düğmesine tıklayın.

Adım 2: IronQR'yi NuGet paket yöneticisinden yükleyin
IronQR, NuGet paket yöneticisi veya Visual Studio Paket Yöneticisi kullanılarak yüklenebilir.

Aşağıda, bunu Visual Studio kullanarak nasıl yapabileceğiniz gösterilmektedir.

Adım 3: AForge Kütüphanesi kullanarak kameradan QR kodunu resim olarak alın
Kamera cihazlarından QR kodları taramak için AForge.Video.DirectShow kütüphanesini kurmamız gerekiyor. Bu, Visual Studio paket yöneticisi kullanılarak yapılabilir. Solution Explorer'a sağ tıklayın ve Paket Yöneticisini açın.

Bu kütüphane, aşağıda gösterildiği gibi NuGet paket konsolu kullanılarak da yüklenebilir. Kütüphaneyi yüklemek için Yükle düğmesine tıklayın.

Adım 4: IronQR kullanarak QR Kodlarını Okuma
Sonraki adım, makineye bağlı kamera cihazından QR kodu görüntüsünü taramak için Form'a bir PictureBox bileşeni oluşturmaktır.
Bu, araç kutusundan sürükleyip bırakarak yapılabilir. Bu PictureBox, kamera cihazından QR kodu verilerini okumak için gereklidir.

Sonra, okunan QR kodlarını göstermek için bir Metin Kutusu sürükleyip bırakın.

IronQR kullanarak QR kodlarını okumak ve çözmek için aşağıdaki kodu ekleyin.
using AForge.Video.DirectShow;
using AForge.Video;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Windows.Forms;
using IronQR;
namespace ReadQR
{
public partial class Form1 : Form
{
// Declare a video capture device
private VideoCaptureDevice videoSource;
public Form1()
{
InitializeComponent();
this.Load += Form1_Load;
this.FormClosing += Form1_FormClosing;
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
// Stop the video source when the form is closing
if (videoSource != null && videoSource.IsRunning)
{
videoSource.SignalToStop();
videoSource.WaitForStop();
}
}
private void Form1_Load(object sender, EventArgs e)
{
// Retrieve video input devices connected to the machine
FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);
if (videoDevices.Count > 0)
{
// Use the first available video device
videoSource = new VideoCaptureDevice(videoDevices[0].MonikerString);
videoSource.NewFrame += VideoSource_NewFrame;
videoSource.Start();
}
else
{
MessageBox.Show("No video devices found.");
Close();
}
}
private void VideoSource_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
// Update the PictureBox with the new frame from the camera
pictureBox1.Image = (Bitmap)eventArgs.Frame.Clone();
var image = (Bitmap)eventArgs.Frame.Clone();
// Set the license key for IronQR. Replace "YourKey" with your actual key
License.LicenseKey = "YourKey";
// Prepare the image for QR code reading
QrImageInput imageInput = new QrImageInput(image);
// Create a QR reader object
QrReader reader = new QrReader();
// Read QR codes from the image
IEnumerable<QrResult> results = reader.Read(imageInput);
// Display the first QR code result in a MessageBox
if (results.Any())
{
MessageBox.Show(results.First().Value);
}
}
}
}
using AForge.Video.DirectShow;
using AForge.Video;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Windows.Forms;
using IronQR;
namespace ReadQR
{
public partial class Form1 : Form
{
// Declare a video capture device
private VideoCaptureDevice videoSource;
public Form1()
{
InitializeComponent();
this.Load += Form1_Load;
this.FormClosing += Form1_FormClosing;
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
// Stop the video source when the form is closing
if (videoSource != null && videoSource.IsRunning)
{
videoSource.SignalToStop();
videoSource.WaitForStop();
}
}
private void Form1_Load(object sender, EventArgs e)
{
// Retrieve video input devices connected to the machine
FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);
if (videoDevices.Count > 0)
{
// Use the first available video device
videoSource = new VideoCaptureDevice(videoDevices[0].MonikerString);
videoSource.NewFrame += VideoSource_NewFrame;
videoSource.Start();
}
else
{
MessageBox.Show("No video devices found.");
Close();
}
}
private void VideoSource_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
// Update the PictureBox with the new frame from the camera
pictureBox1.Image = (Bitmap)eventArgs.Frame.Clone();
var image = (Bitmap)eventArgs.Frame.Clone();
// Set the license key for IronQR. Replace "YourKey" with your actual key
License.LicenseKey = "YourKey";
// Prepare the image for QR code reading
QrImageInput imageInput = new QrImageInput(image);
// Create a QR reader object
QrReader reader = new QrReader();
// Read QR codes from the image
IEnumerable<QrResult> results = reader.Read(imageInput);
// Display the first QR code result in a MessageBox
if (results.Any())
{
MessageBox.Show(results.First().Value);
}
}
}
}
Imports AForge.Video.DirectShow
Imports AForge.Video
Imports System
Imports System.Collections.Generic
Imports System.Drawing
Imports System.Linq
Imports System.Windows.Forms
Imports IronQR
Namespace ReadQR
Partial Public Class Form1
Inherits Form
' Declare a video capture device
Private videoSource As VideoCaptureDevice
Public Sub New()
InitializeComponent()
AddHandler Me.Load, AddressOf Form1_Load
AddHandler Me.FormClosing, AddressOf Form1_FormClosing
End Sub
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs)
' Stop the video source when the form is closing
If videoSource IsNot Nothing AndAlso videoSource.IsRunning Then
videoSource.SignalToStop()
videoSource.WaitForStop()
End If
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
' Retrieve video input devices connected to the machine
Dim videoDevices As New FilterInfoCollection(FilterCategory.VideoInputDevice)
If videoDevices.Count > 0 Then
' Use the first available video device
videoSource = New VideoCaptureDevice(videoDevices(0).MonikerString)
AddHandler videoSource.NewFrame, AddressOf VideoSource_NewFrame
videoSource.Start()
Else
MessageBox.Show("No video devices found.")
Close()
End If
End Sub
Private Sub VideoSource_NewFrame(ByVal sender As Object, ByVal eventArgs As NewFrameEventArgs)
' Update the PictureBox with the new frame from the camera
pictureBox1.Image = DirectCast(eventArgs.Frame.Clone(), Bitmap)
Dim image = DirectCast(eventArgs.Frame.Clone(), Bitmap)
' Set the license key for IronQR. Replace "YourKey" with your actual key
License.LicenseKey = "YourKey"
' Prepare the image for QR code reading
Dim imageInput As New QrImageInput(image)
' Create a QR reader object
Dim reader As New QrReader()
' Read QR codes from the image
Dim results As IEnumerable(Of QrResult) = reader.Read(imageInput)
' Display the first QR code result in a MessageBox
If results.Any() Then
MessageBox.Show(results.First().Value)
End If
End Sub
End Class
End Namespace
Giriş Resim Dosyası
QR kodundaki şifreli metin: IronQR'u Seviyorum

Çıktı

Örnek Kod Açıklaması
- Windows Forms'da iki etkinlik kaydettik:
Form1_LoadveForm1_FormClosing. - Ayrıca,
VideoSource_NewFrame'yi, AForge.Video.DirectShow kütüphanesindenvideoSourcebir örneğine kaydettik. - QR kodlarını canlı video akışından okuyoruz.
- Bir QR kodu tespit edildiğinde, çözümlenmiş metinle bir MessageBox gösteriyoruz.
Lisanslama (Ücretsiz Deneme Mevcuttur)
IronQR bir lisans anahtarı gerektirir. Bir deneme anahtarı, web sitesi buradan alınabilir. Bu anahtar appsettings.json içine yerleştirilmelidir.
{
"IronQr.LicenseKey": "MYLICENSE.KEY.TRIAL"
}
Bir deneme lisansı almak için e-posta kimliğini sağlayın ve gönderildikten sonra anahtar e-posta ile teslim edilecektir.

Sonuç
Sonuç olarak, QR kodları, dijital ekosistemimizde vazgeçilmez hale gelmek için kökenlerinin ötesine geçti. IronQR ile C# geliştiricileri, QR kodu tanıma gücünden yararlanabilir, çeşitli türlerdeki QR kodlarındaki verileri kolayca çözebilir ve çeşitli alanlarda yenilik yapabilir.
QR kodları yeni teknolojilere entegre olmaya ve evrilmeye devam ettikçe, kesintisiz veri alışverişini kolaylaştırma ve kullanıcı deneyimlerini geliştirme konusundaki önemi daha da artacaktır. IronQR ile QR kodlarının potansiyelini kucaklayın ve C# geliştirmelerinde yenilik ve verimlilik yolculuğuna çıkın.
Sıkça Sorulan Sorular
QR kodlarını okumak için bir C# projesini nasıl kurabilirim?
QR kodlarını okumak için bir C# projesi kurmak için Visual Studio'da yeni bir Windows Forms Uygulaması oluşturarak başlayın. NuGet Paket Yöneticisi'nden IronQR kütüphanesini yükleyin ve kameradan video akışlarını yakalamak için AForge.Video.DirectShow kütüphanesine sahip olduğunuzdan emin olun.
QR kodu okumada IronQR kullanmanın avantajları nelerdir?
IronQR, gelişmiş makine öğrenme modellerini kullanarak QR kodlarının okunması için güçlü yetenekler sunar. Zor koşullarda bile doğru çözümlemeyi sağlar ve çeşitli .NET çerçeveleri ve işletim sistemleriyle uyumludur.
C# uygulamasında IronQR kullanarak bir QR kodunu nasıl çözebilirim?
IronQR ile bir C# uygulamasında QR kodunu çözmek için AForge kullanarak kameradan bir görüntü alın, ardından yakalanan görüntüden QR kodunu işlemek ve çözmek için IronQR kütüphanesini kullanın.
IronQR canlı video akışlarından QR kodlarını çözebilir mi?
Evet, IronQR AForge.Video.DirectShow kütüphanesi ile çerçeveleri yakalayıp gerçek zamanlı olarak işleyerek canlı video akışlarından QR kodlarını çözebilir.
C#'ta bir QR kodu okuyucu oluşturmak için hangi kütüphaneler gereklidir?
C#'ta bir QR kodu okuyucu oluşturmak için gerekli kütüphaneler, QR kodlarını çözmek için IronQR ve kameradan video akışlarını yakalamak için AForge.Video.DirectShow'dur.
IronQR QR kodu çözme sırasında veri bütünlüğünü nasıl sağlar?
IronQR, orijinal QR kodları ile potansiyel tehditler arasında doğru ayrım yaparak güvenliği artırır ve çözülen bilgilerin güvenilirliğini sağlar.
IronQR kullanarak görüntülerden QR kodlarını taramak mümkün müdür?
Evet, IronQR yalnızca canlı akışlardan değil, aynı zamanda statik görüntülerden de QR kodlarını tarayabilir, bu da çeşitli uygulama ihtiyaçları için esneklik sağlar.
IronQR için deneme lisansını nasıl alırım?
Iron Software web sitesinden IronQR için deneme lisansı alabilirsiniz, bu da deneme anahtarını uygulamanızın appsettings.json dosyasında yerleştirerek kütüphanenin özelliklerini test etmenizi sağlar.
QR kodu okuyucu uygulamasında PictureBox bileşeni ne rol oynar?
QR kodu okuyucu uygulamasında PictureBox bileşeni, kameradan canlı video akışını gösterir, böylece gelen karelerden QR kodlarını yakalamak ve çözmek için IronQR'ü etkinleştirir.
C#'ta QR kodu çözme ile ilgili sorunları nasıl gideririm?
QR kodu çözme ile ilgili sorunlarla karşılaşırsanız, IronQR ve AForge kütüphanelerinin doğru yüklendiğinden, kamera akışının düzgün entegre edildiğinden emin olun ve uygulamanızın video karelerini doğru şekilde yakalayarak işlediğinden emin olun.




