C# Kullanarak NET MAUI'da Barkod Okuma & Tarama Nasıl Yapılır

.NET MAUI Barkod Tarayıcı

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

Giriş

.NET MAUI (.NET Çok-platformlu Uygulama UI) tek kod tabanında çapraz platform uygulamalarını sorunsuz bir şekilde oluşturmak için kullanılan bir çapraz platform çerçevesidir. Örneğin, tek bir projede Microsoft Windows, iOS ve Android uygulamaları oluşturabilirsiniz. Diğer platformlar, çerçeveler ve kütüphanelerden ayıran şey, geliştirici topluluğu projelerinde yerel kontrolleri kullanmalarına ve onlara ek bileşenler sağlamasına imkan tanımasıdır. Sonuç olarak, geliştiriciler bu önceden oluşturulmuş bileşenleri ve hizmetleri kullanarak uygulamaları daha hızlı bir şekilde tam kod yazmadan oluşturabilirler.

Bu makalede, IronBarcode'u .NET MAUI Windows uygulamasıyla bir barkod ya da QR kod taramak için nasıl entegre edecegimizi açıklayacağız.

IronBarcode: C# Barkod Kütüphanesi

Uygulamamızda barkodları okumak için IronBarcode .NET kütüphanesini kullanacağız. Barkod okumak için güçlü ve basit bir API sağlar; barkod alanında bilgi veya zorlama olmadan geliştirme imkanı tanır. NuGet paket yöneticisi ile kolayca kurulur.

IronBarcode, Code 39, Code 128, PDF417 gibi birçok barkod formatını okumak için destekler. Resim dosyaları, bellek akışları ve PDFler gibi çeşitli veri formatlarından okuyabilirsiniz.

.NET MAUI Uygulamasında Barkod Okuma Adımları

.NET MAUI uygulamasında barkod okumak için bu adımları takip edin.

Önkoşullar

  1. Visual Studio 2022
  2. Visual Studio'da bir .NET MAUI projesi

IronBarcode Kütüphanesini Yükle

IronBarcode kutuphanesini NuGet kullanarak Package Manager Console ile kurabiliriz. Bu konsolu Visual Studio'da açmak için Tools > NuGet Package Manager > Package Manager Console gidin. Sonra, aşağıdaki komutu konsolda yazın:

Install-Package BarCode

Bu konsol komutu, MAUI projesinde IronBarcode kutuphanesinin en son sürümünü indirecektir. Alternatif olarak, NuGet web sitesi'nde NuGet paketinin en son sürümünü arayabilirsiniz.

Ön Yüz

İlk adım ön yüz tasarımını oluşturmaktır. Bunun için iki düğme, bir metin alanı ve bir resim kutusundan oluşan bir düzen oluşturacağız. Bir düğme barkod seçmek için, diğeri ise barkod metnini kopyalamak için kullanılacak. Resim kutusu seçilen resmi gösterecek.

MainPage.xaml dosyasındaki içeriği aşağıdakilerle değiştirin:

<?xml version="1.0" encoding="utf-8"?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MAUI_Barcode.MainPage">

    <ScrollView>
        <VerticalStackLayout
            Spacing="25"
            Padding="30,0"
            VerticalOptions="Center">

            <Button
                x:Name="ImageSelect"
                Text="Select Barcode"
                SemanticProperties.Hint="Select Image"
                Clicked="SelectBarcode"
                HorizontalOptions="Center" />
            <Image
                x:Name="barcodeImage"
                SemanticProperties.Description="Selected Barcode"
                HeightRequest="200"
                HorizontalOptions="Center" />
            <Editor
                x:Name="outputText"
                Placeholder="Output text"
                HeightRequest="100"
                WidthRequest="500" />
            <Button
                x:Name="copyText"
                Text="Copy"
                SemanticProperties.Hint="Copy Text"
                WidthRequest="150"
                Clicked="CopyEditorText"
                HorizontalOptions="Center" />

        </VerticalStackLayout>
    </ScrollView>

</ContentPage>
<?xml version="1.0" encoding="utf-8"?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MAUI_Barcode.MainPage">

    <ScrollView>
        <VerticalStackLayout
            Spacing="25"
            Padding="30,0"
            VerticalOptions="Center">

            <Button
                x:Name="ImageSelect"
                Text="Select Barcode"
                SemanticProperties.Hint="Select Image"
                Clicked="SelectBarcode"
                HorizontalOptions="Center" />
            <Image
                x:Name="barcodeImage"
                SemanticProperties.Description="Selected Barcode"
                HeightRequest="200"
                HorizontalOptions="Center" />
            <Editor
                x:Name="outputText"
                Placeholder="Output text"
                HeightRequest="100"
                WidthRequest="500" />
            <Button
                x:Name="copyText"
                Text="Copy"
                SemanticProperties.Hint="Copy Text"
                WidthRequest="150"
                Clicked="CopyEditorText"
                HorizontalOptions="Center" />

        </VerticalStackLayout>
    </ScrollView>

</ContentPage>
XML

Tüm öğeler merkezi konumda dikey bir yığında yer alıyor. Bunu tercihlerinize göre değiştirebilirsiniz.

IronBarcode kullanarak Barkod Tarama

Bu bölümde IronBarcode kütüphanesi kullanılarak barkod tarama kodu açıklanacaktır. Öncelikle, dosyayı seçmek ve görüntü için dosya türünü belirtmek için bir FilePicker kullanacağız. Bundan sonra, görüntü dosyasının yolunu almak için FullPath özelliğini kullanacağız ve ardından görüntü kutusunun kaynağını FullPath değerine ayarlayacağız. Son olarak, metni almak için BarcodeReader fonksiyonunun Read içerisinde path değerini kullanacağız.

private async void SelectBarcode(object sender, EventArgs e)
{
    // Use FilePicker to allow the user to select an image file.
    var images = await FilePicker.Default.PickAsync(new PickOptions
    {
        PickerTitle = "Pick image",
        FileTypes = FilePickerFileType.Images
    });

    // Get the full path of the selected image file.
    var imageSource = images.FullPath.ToString();

    // Set the source of the Image view to the selected image's path.
    barcodeImage.Source = imageSource;

    // Use IronBarcode to read the barcode from the image file and get the first result.
    var result = BarcodeReader.Read(imageSource).First().Text;

    // Display the read result in the Editor.
    outputText.Text = result;
}
private async void SelectBarcode(object sender, EventArgs e)
{
    // Use FilePicker to allow the user to select an image file.
    var images = await FilePicker.Default.PickAsync(new PickOptions
    {
        PickerTitle = "Pick image",
        FileTypes = FilePickerFileType.Images
    });

    // Get the full path of the selected image file.
    var imageSource = images.FullPath.ToString();

    // Set the source of the Image view to the selected image's path.
    barcodeImage.Source = imageSource;

    // Use IronBarcode to read the barcode from the image file and get the first result.
    var result = BarcodeReader.Read(imageSource).First().Text;

    // Display the read result in the Editor.
    outputText.Text = result;
}
Private Async Sub SelectBarcode(ByVal sender As Object, ByVal e As EventArgs)
	' Use FilePicker to allow the user to select an image file.
	Dim images = Await FilePicker.Default.PickAsync(New PickOptions With {
		.PickerTitle = "Pick image",
		.FileTypes = FilePickerFileType.Images
	})

	' Get the full path of the selected image file.
	Dim imageSource = images.FullPath.ToString()

	' Set the source of the Image view to the selected image's path.
	barcodeImage.Source = imageSource

	' Use IronBarcode to read the barcode from the image file and get the first result.
	Dim result = BarcodeReader.Read(imageSource).First().Text

	' Display the read result in the Editor.
	outputText.Text = result
End Sub
$vbLabelText   $csharpLabel

Aşağıda gösterilen kod, metin editörünün metnini kopyalamak ve kullanıcının metnin kopyalandığını belirten bir uyarı mesajı vermek için kullanılacaktır.

private async void CopyEditorText(object sender, EventArgs e)
{
    // Copy the text from the Editor to the clipboard.
    await Clipboard.SetTextAsync(outputText.Text);

    // Show a success message to the user.
    await DisplayAlert("Success", "Text is copied!", "OK");
}
private async void CopyEditorText(object sender, EventArgs e)
{
    // Copy the text from the Editor to the clipboard.
    await Clipboard.SetTextAsync(outputText.Text);

    // Show a success message to the user.
    await DisplayAlert("Success", "Text is copied!", "OK");
}
Private Async Sub CopyEditorText(ByVal sender As Object, ByVal e As EventArgs)
	' Copy the text from the Editor to the clipboard.
	Await Clipboard.SetTextAsync(outputText.Text)

	' Show a success message to the user.
	Await DisplayAlert("Success", "Text is copied!", "OK")
End Sub
$vbLabelText   $csharpLabel

You can find the project source code in this article on GitHub.

Çıktı

Projeyi çalıştırdıktan sonra aşağıdaki çıktıyı göreceksiniz. Resim henüz seçilmediği için gösterilmiyor.

.NET MAUI Barcode Scanner Tutorial Using IronBarcode - Figure 1: Resim seçilmediğinde çıktı

Resim seçilmediğinde çıktı

Barkod seçildiğinde, aşağıdaki ekran görüntüsünde olduğu gibi görünecek ve QR Kodunun çıktı metni editörde gösterilecektir.

.NET MAUI Barcode Scanner Tutorial Using IronBarcode - Figure 2: Resim seçildikten sonra çıktı

Resim seçildikten sonra çıktı

Kopyala düğmesine tıklamak, daha önce bahsedilen uyarı penceresini tetikleyecektir.

.NET MAUI Barcode Scanner Tutorial Using IronBarcode - Figure 3: Kopyalama uyarısı

Kopyalama uyarısı

Sonuç

Bu makalede, IronBarcode kullanarak bir .NET MAUI uygulamasında barkodları nasıl okuyabileceğimizi açıkladık. Bir QR kod okuyucu olarak, IronBarcode beklendiği gibi tam çıktıyı verir—çok iyi bir performans sergiler. Ayrıca, okunması zor barkodları da okuyabilir. Ayrıca, farklı yazı tipleri kullanarak barkodlar oluşturabilir ve kişiselleştirebilirsiniz. IronBarcode ile ilgili daha fazla eğitim gönderisine bu link ten ulaşabilirsiniz.

IronBarcode'un geliştirme ve ticari kullanım için lisanslanması gerekir. Lisanslama hakkında daha fazla bilgiyi burada bulabilirsiniz.

Sıkça Sorulan Sorular

.NET MAUI uygulamasında QR kodlarını nasıl tarayabilirim?

IronBarcode kütüphanesini kullanarak .NET MAUI uygulamasında QR kodlarını tarayabilirsiniz. Visual Studio'daki NuGet Paket Yöneticisi üzerinden kütüphaneyi yükleyin ve seçilen resim dosyasından metin çıkarmak için BarcodeReader.Read metodunu kullanın.

Bir .NET MAUI projesinde IronBarcode nasıl kurulur?

.NET MAUI projesine IronBarcode yüklemek için Visual Studio'da NuGet Paket Yöneticisi Konsolunu açın ve kütüphaneyi indirmek ve kurmak için Install-Package Barcode komutunu çalıştırın.

IronBarcode kütüphanesi ile hangi barkod formatları okunabilir?

IronBarcode, QR kodları, Code 39, Code 128, PDF417 ve daha fazlası da dahil olmak üzere çeşitli barkod formatlarını destekler ve uygulamalarınızda çok yönlü barkod okuma yetenekleri sağlar.

.NET MAUI'de bir barkod tarayıcı uygulaması için arayüzü nasıl tasarlayabilirim?

.NET MAUI'de bir barkod tarayıcı uygulaması için arayüz XAML kullanılarak tasarlanabilir. Genellikle, MainPage.xaml dosyasında tanımlanabilecek bir düzen ile düğmeler, bir metin alanı ve bir resim kutusundan oluşur.

.NET MAUI uygulamasında taranan barkod metnini panoya nasıl kopyalayabilirim?

Taranan barkod metnini panoya kopyalamak için .NET MAUI uygulamanızda Clipboard.SetTextAsync metodunu kullanın. Bu metot, bir düğme tıklaması ile tetiklenebilir ve işlem onaylamak için bir uyarı gösterebilir.

IronBarcode ile .NET MAUI'de barkod görünümlerini özelleştirmek mümkün mü?

Evet, IronBarcode yazı tiplerini, renkleri ve stilleri değiştirme seçenekleri sunarak barkod görünümlerinin özelleştirilmesine olanak tanır ve görsel olarak uyarlanmış barkodlar oluşturmayı sağlar.

IronBarcode'u ticari uygulamalarda kullanmak için lisansa ihtiyaçım var mı?

Evet, IronBarcode'u hem geliştirme hem de ticari amaçlar için kullanmak için lisans gereklidir. Lisans detayları ve seçenekleri IronBarcode web sitesinde mevcuttur.

.NET MAUI barkod tarayıcı eğitimi için kaynak koda nereden erişebilirim?

.NET MAUI barkod tarayıcı eğitimi için kaynak kod GitHub'da mevcuttur. Makalede kolay erişim için bir bağlantı sağlanmıştır.

IronBarcode, .NET MAUI uygulamalarında barkod tarama işlemini nasıl geliştirir?

IronBarcode, birden fazla barkod formatını destekleyen sağlam bir API sağlayarak ve .NET MAUI projeleriyle sorunsuz entegrasyon sunarak .NET MAUI uygulamalarında barkod tarama işlemini geliştirir, böylece verimli ve doğru barkod okuma sağlar.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku
Başlamaya Hazır mısınız?
Nuget İndirmeler 2,169,908 | Sürüm: 2026.4 just released
Still Scrolling Icon

Hala Kaydiriyor musunuz?

Hızlı bir kanit mi istiyorsunuz? PM > Install-Package BarCode
bir örnek çalıştırın dize barkod haline geldiğini görün.