Zum Fußzeileninhalt springen
IRONBARCODE VERWENDEN

.NET MAUI BarCode Scanner SDK: Erstellen Sie einen plattformübergreifenden Scanner in wenigen Minuten

Wir alle kennen das Versprechen von .NET MAUI: einmal Code schreiben und ihn überall einsetzen. Diese "nahtlose" Erfahrung stößt jedoch oft auf ein Hindernis, wenn es um die Integration von Hardware-Funktionen geht - insbesondere um das Scannen von Barcodes.

Wenn Sie schon einmal versucht haben, native Kamera-APIs manuell zu überbrücken, wissen Sie, dass dies schnell zu einem Kaninchenbau aus plattformspezifischen Konfigurationen werden kann. Das muss gar nicht so schwer sein. In diesem Tutorial überspringen wir die stundenlange Einrichtung und verwenden die IronBarcode-Bibliothek, um in nur wenigen Minuten einen funktionierenden plattformübergreifenden Scanner zu erstellen.

Bereit zum Start? Holen Sie sich Ihre kostenlose Testversion und lassen Sie uns programmieren.

NuGet Mit NuGet installieren

PM >  Install-Package BarCode

Schauen Sie sich IronBarcode auf NuGet für eine schnelle Installation an. Mit über 10 Millionen Downloads transformiert es die PDF-Entwicklung mit C#. Sie können auch das DLL herunterladen.

Wie richtet man ein Barcode Scanner SDK in .NET MAUI ein?

Die Einrichtung eines .NET MAUI Barcode-Scanner-SDK erfordert die Erstellung eines neuen Projekts, die Installation des NuGet-Pakets und die Konfiguration von Plattformberechtigungen. Der gesamte Konfigurationsprozess dauert nur wenige Minuten in Visual Studio.

Erstellen Sie das .NET MAUI-Projekt

Öffnen Sie Visual Studio und erstellen Sie ein neues .NET MAUI App-Projekt. Benennen Sie Ihr MAUI-Projekt mit einem aussagekräftigen Namen wie "BarcodeScanner" und wählen Sie .NET 8 oder höher als Ziel-Framework. Visual Studio generiert die Standard-Projektstruktur mit plattformspezifischen Ordnern für Android und iOS.

IronBarcode installieren

Installieren Sie das IronBarcode NuGet-Paket über die Paketverwaltungskonsole:

Install-Package BarCode

Mit diesem Befehl wird das Barcodescanner-SDK zusammen mit allen erforderlichen Abhängigkeiten für Ihre .NET MAUI-Anwendung heruntergeladen und installiert.

Plattform-Berechtigungen konfigurieren

Auch wenn Sie von Bilddateien und nicht von einer Live-Kamera scannen, empfiehlt es sich, die folgenden Berechtigungen für Ihre .NET MAUI Barcode-Scanner-App zu konfigurieren.

Für Android fügen Sie Folgendes zu Platforms/Android/AndroidManifest.xml hinzu:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
XML

Für iOS fügen Sie diese Einträge zu Platforms/iOS/Info.plist hinzu:

<key>NSPhotoLibraryUsageDescription</key>
<string>Access needed to select barcode images for scanning.</string>
<key>NSCameraUsageDescription</key>
<string>Camera permission for barcode scanning.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Access needed to select barcode images for scanning.</string>
<key>NSCameraUsageDescription</key>
<string>Camera permission for barcode scanning.</string>
XML

Initialisierung des SDK

Konfigurieren Sie IronBarcode in Ihrer MauiProgram.cs-Datei:

public static class MauiProgram
{
    public static MauiApp CreateMauiApp()
    {
        var builder = MauiApp.CreateBuilder();
        builder
            .UseMauiApp<App>()
            .ConfigureFonts(fonts =>
            {
                fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
            });
        return builder.Build();
    }
}
public static class MauiProgram
{
    public static MauiApp CreateMauiApp()
    {
        var builder = MauiApp.CreateBuilder();
        builder
            .UseMauiApp<App>()
            .ConfigureFonts(fonts =>
            {
                fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
            });
        return builder.Build();
    }
}
$vbLabelText   $csharpLabel

Setzen Sie Ihren Lizenzschlüssel in den Initialisierungscode Ihrer Anwendung, um die volle Funktionalität zu aktivieren. IronBarcode bietet eine kostenlose Testlizenz für die Entwicklung und den Test an.

Wie kann man BarCodes aus Bilddateien lesen?

Die Kernfunktionalität eines jeden MAUI BarCode Scanners ist die Fähigkeit, Barcodes von ausgewählten Bildern zu lesen. IronBarcode macht dies mit seiner BarcodeReader-Klasse bemerkenswert einfach.

Gestaltung der Benutzeroberfläche

Erstellen Sie eine saubere Schnittstelle in MainPage.xaml, die es Benutzern ermöglicht, eine Bilddatei auszuwählen und die gescannten Barcodedaten anzuzeigen:

<?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="BarcodeScanner.MainPage">
    <VerticalStackLayout Padding="20" Spacing="15">
        <Label Text=".NET MAUI Barcode Scanner" FontSize="24" HorizontalOptions="Center"/>
        <Button Text="Select Image to Scan" Clicked="OnSelectImageClicked"/>
        <Image x:Name="SelectedImageView" HeightRequest="200"/>
        <Label x:Name="ResultLabel" FontSize="16"/>
    </VerticalStackLayout>
</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="BarcodeScanner.MainPage">
    <VerticalStackLayout Padding="20" Spacing="15">
        <Label Text=".NET MAUI Barcode Scanner" FontSize="24" HorizontalOptions="Center"/>
        <Button Text="Select Image to Scan" Clicked="OnSelectImageClicked"/>
        <Image x:Name="SelectedImageView" HeightRequest="200"/>
        <Label x:Name="ResultLabel" FontSize="16"/>
    </VerticalStackLayout>
</ContentPage>
XML

Einführung von BarCode-Scanning

Fügen Sie die Scan-Logik zu MainPage.xaml.cs hinzu. Dieser Code behandelt die Bildauswahl und die Barcode-Erkennung:

using IronBarCode;
public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();
    }
    private async void OnSelectImageClicked(object sender, EventArgs e)
    {
        var result = await FilePicker.PickAsync(new PickOptions
        {
            FileTypes = FilePickerFileType.Images,
            PickerTitle = "Select a barcode image"
        });
        if (result != null)
        {
            // Display the selected image
            SelectedImageView.Source = ImageSource.FromFile(result.FullPath);
            // Read barcodes from the image file
            var barcodes = BarcodeReader.Read(result.FullPath);
            if (barcodes.Any())
            {
                ResultLabel.Text = $"Found: {barcodes.First().Value}";
            }
            else
            {
                ResultLabel.Text = "No barcodes detected in selected image.";
            }
        }
    }
}
using IronBarCode;
public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();
    }
    private async void OnSelectImageClicked(object sender, EventArgs e)
    {
        var result = await FilePicker.PickAsync(new PickOptions
        {
            FileTypes = FilePickerFileType.Images,
            PickerTitle = "Select a barcode image"
        });
        if (result != null)
        {
            // Display the selected image
            SelectedImageView.Source = ImageSource.FromFile(result.FullPath);
            // Read barcodes from the image file
            var barcodes = BarcodeReader.Read(result.FullPath);
            if (barcodes.Any())
            {
                ResultLabel.Text = $"Found: {barcodes.First().Value}";
            }
            else
            {
                ResultLabel.Text = "No barcodes detected in selected image.";
            }
        }
    }
}
$vbLabelText   $csharpLabel

Ausgabe

.NET MAUI Barcode Scanner SDK: Erstellen Sie einen plattformübergreifenden Scanner in wenigen Minuten: Bild 1 - Gescannte Barcode-Ausgabe

Die Methode BarcodeReader.Read() analysiert das ausgewählte Bild und gibt alle erkannten Barcodes zurück. IronBarcode erkennt automatisch mehrere Barcode-Symbologien, darunter QR-Codes, Code 128, Code 39, EAN-13 und viele andere Formate.

Wie scannt man BarCodes aus PDF-Dokumenten?

Eine leistungsstarke Funktion, die IronBarcode auszeichnet, ist das Lesen von Barcodes direkt aus PDF-Dateien. Dies ist wichtig für .NET MAUI-Anwendungen, die Dokumenten-Workflows verarbeiten.

private async void OnSelectPdfClicked(object sender, EventArgs e)
{
    var result = await FilePicker.PickAsync(new PickOptions
    {
        PickerTitle = "Select a PDF with barcodes"
    });
    if (result != null)
    {
        // Read barcodes from PDF document
        var barcodes = BarcodeReader.ReadPdf(result.FullPath);
        string output = "";
        foreach (var barcode in barcodes)
        {
            output += $"Page {barcode.PageNumber}: {barcode.Value}\n";
        }
        await DisplayAlert("Scan Results", output, "OK");
    }
}
private async void OnSelectPdfClicked(object sender, EventArgs e)
{
    var result = await FilePicker.PickAsync(new PickOptions
    {
        PickerTitle = "Select a PDF with barcodes"
    });
    if (result != null)
    {
        // Read barcodes from PDF document
        var barcodes = BarcodeReader.ReadPdf(result.FullPath);
        string output = "";
        foreach (var barcode in barcodes)
        {
            output += $"Page {barcode.PageNumber}: {barcode.Value}\n";
        }
        await DisplayAlert("Scan Results", output, "OK");
    }
}
$vbLabelText   $csharpLabel

Ausgabe

.NET MAUI Barcode Scanner SDK: Erstellen Sie einen plattformübergreifenden Scanner in wenigen Minuten: Bild 2 - Ausgabe für das Scannen eines PDF mit QR-Codes darin

Die Methode ReadPdf() scannt alle Seiten einer PDF-Datei und gibt die Barcodedaten zusammen mit den Seitenzahlen zurück, was die Verarbeitung von Dokumenten mit mehreren Barcodes erleichtert.

Wie gehen Sie mit mehreren BarCodes und QR-Codes um?

Für Szenarien, die die Erkennung mehrerer Barcodes aus einem einzigen Scan oder die Filterung bestimmter Barcodeformate erfordern, konfigurieren Sie die Klasse BarcodeReaderOptions:

var options = new BarcodeReaderOptions
{
    ExpectMultipleBarcodes = true,
    ExpectBarcodeTypes = BarcodeEncoding.QRCode | BarcodeEncoding.Code128,
    Speed = ReadingSpeed.Balanced
};
var barcodes = BarcodeReader.Read(imagePath, options);
foreach (var barcode in barcodes)
{
    Console.WriteLine($"Type: {barcode.BarcodeType}, Value: {barcode.Value}");
}
var options = new BarcodeReaderOptions
{
    ExpectMultipleBarcodes = true,
    ExpectBarcodeTypes = BarcodeEncoding.QRCode | BarcodeEncoding.Code128,
    Speed = ReadingSpeed.Balanced
};
var barcodes = BarcodeReader.Read(imagePath, options);
foreach (var barcode in barcodes)
{
    Console.WriteLine($"Type: {barcode.BarcodeType}, Value: {barcode.Value}");
}
$vbLabelText   $csharpLabel

Diese Konfiguration ermöglicht das Scannen mehrerer Barcodes und beschränkt die Erkennung auf bestimmte Barcode-Symbologien, um die Leistung zu verbessern. Mit der Eigenschaft Geschwindigkeit können Sie je nach den Anforderungen Ihrer Anwendung ein Gleichgewicht zwischen Scan-Geschwindigkeit und Genauigkeit herstellen.

Was sind die wichtigsten Vorteile dieses Barcode Scanner SDK?

IronBarcode for .NET MAUI bietet mehrere Vorteile für Barcode-Scanprojekte:

  • Plattformübergreifende Unterstützung: Bereitstellung auf Android-, iOS- und Windows-Plattformen von einer einzigen Codebasis aus
  • Mehrere Eingabequellen: Scannen von BarCodes aus Bildern, Speicherströmen und PDF-Dateien
  • Umfassende Formatunterstützung: Dekodierung von Barcodes in Dutzenden von 1D- und 2D-Barcodesymbologien
  • Einfache API: Integrieren Sie schnelles Scannen von Barcodes mit nur ein paar Zeilen Code
  • Keine externen Abhängigkeiten: Die .NET-Bibliothek arbeitet unabhängig, ohne zusätzliche native SDKs zu benötigen

Abschluss

Der Aufbau eines .NET MAUI Barcode-Scanners mit IronBarcode zeigt, wie einfach es ist, Barcode-Scanfunktionen in plattformübergreifende Anwendungen zu integrieren. Von der Installation des NuGet-Pakets bis zum Lesen von Barcodes aus Bildern und PDFs erfordert der gesamte Prozess nur minimale Konfiguration und Code.

Die Kombination aus den plattformübergreifenden Framework-Funktionen von .NET MAUI und dem robusten SDK für das Scannen von IronBarcode ermöglicht es Entwicklern, leistungsstarke Anwendungen zum Scannen von Barcodes zu erstellen, die nahtlos auf mobilen Geräten und auf dem Desktop laufen.

Sind Sie bereit, Ihr .NET MAUI-Projekt um das Scannen von Barcodes zu erweitern? Starten Sie Ihre kostenlose Testversion oder Erkunden Sie die Lizenzierungsoptionen für den Produktionseinsatz.

Häufig gestellte Fragen

Was ist .NET MAUI und wie hängt es mit dem Scannen von Strichcodes zusammen?

.NET MAUI ist ein Framework, mit dem Entwickler plattformübergreifende Anwendungen mit einer einzigen Codebasis erstellen können. Die Integration von Barcode-Scans in eine .NET MAUI-Anwendung kann eine Herausforderung sein, aber IronBarcode vereinfacht diesen Prozess, indem es robuste Tools zum Scannen und Lesen von Barcodes auf verschiedenen Plattformen bereitstellt.

Wie kann IronBarcode bei der Entwicklung eines Barcode-Scanners für .NET MAUI-Anwendungen helfen?

IronBarcode bietet eine umfassende Bibliothek, die das Scannen und Erzeugen von Barcodes unterstützt. Sie rationalisiert den Prozess der Erstellung eines Barcode-Scanners für .NET MAUI-Anwendungen, indem sie einfach zu verwendende Methoden und Funktionen zum Lesen von Barcodes aus Bildern und PDFs bietet.

Ist IronBarcode mit der plattformübergreifenden Entwicklung in .NET MAUI kompatibel?

Ja, IronBarcode ist vollständig kompatibel mit .NET MAUI und ermöglicht es Entwicklern, Barcode-Scanfunktionen in Anwendungen zu integrieren, die auf mehreren Plattformen von einer einzigen Codebasis aus laufen.

Welche Arten von Barcodes können mit IronBarcode in einer .NET MAUI-Anwendung gescannt werden?

IronBarcode unterstützt eine breite Palette von Barcode-Formaten, darunter QR-Codes, Code 128, UPC, EAN und mehr, so dass es für verschiedene Anwendungen in .NET MAUI vielseitig einsetzbar ist.

Wie vereinfacht IronBarcode das Scannen von Barcodes in .NET MAUI?

IronBarcode vereinfacht das Scannen von Barcodes, indem es eine einheitliche API bereitstellt, die die Erkennung und das Lesen von Barcodes mit minimalem Code handhabt und eine reibungslose Integration in .NET MAUI-Projekte gewährleistet.

Welche Vorteile bietet IronBarcode für das Lesen von PDF-Barcodes in MAUI-Anwendungen?

IronBarcode bietet erweiterte Funktionen zum Extrahieren von Barcodes aus PDF-Dokumenten und ermöglicht es .NET MAUI-Entwicklern, ihren plattformübergreifenden Anwendungen problemlos PDF-Barcode-Lesefunktionen hinzuzufügen.

Welche Schritte sind bei der Einrichtung von IronBarcode in einem .NET MAUI-Projekt erforderlich?

Die Einrichtung von IronBarcode in einem .NET MAUI-Projekt umfasst die Installation des IronBarcode NuGet-Pakets, den Import der erforderlichen Namespaces und die Verwendung der bereitgestellten Methoden zur Implementierung von Barcode-Scan- und Lesefunktionen.

Kann IronBarcode das Scannen von bildbasierten Barcodes in .NET MAUI verarbeiten?

Ja, IronBarcode kann effektiv Barcodes von Bildern scannen und lesen und ist damit ein leistungsfähiges Tool für Entwickler, die bildbasierte Barcode-Scans in ihren .NET MAUI-Anwendungen implementieren möchten.

Ist IronBarcode für das Scannen von Barcodes in Echtzeit in mobilen Anwendungen geeignet?

IronBarcode wurde für das effiziente Scannen von Barcodes in Echtzeit entwickelt und eignet sich daher für mobile Anwendungen, die mit .NET MAUI entwickelt wurden und eine schnelle und genaue Verarbeitung von Barcode-Daten erfordern.

Jordi Bardia
Software Ingenieur
Jordi ist am besten in Python, C# und C++ versiert. Wenn er nicht bei Iron Software seine Fähigkeiten einsetzt, programmiert er Spiele. Mit Verantwortung für Produkttests, Produktentwicklung und -forschung trägt Jordi mit immensem Wert zur kontinuierlichen Produktverbesserung bei. Die abwechslungsreiche Erfahrung hält ihn gefordert und engagiert, ...
Weiterlesen