IRONSOFTWAREHOME
KORZYSTANIE Z IRONBARCODE

Jak korzystać z SDK skanera dokumentów w aplikacji .NET MAUI

Curtis Chau
Curtis Chau
Updated: 28 czerwca 2026

Wraz z rozwojem technologii mobilnych aplikacje do skanowania dokumentów, takie jak Scanbot SDK i Native SDK, stały się niezbędnymi narzędziami zarówno dla osób prywatnych, jak i firm. W tym samouczku omówimy, jak stworzyć aplikację do skanowania dokumentów przy użyciu najnowszej wersji .NET Multi-platform App UI (MAUI) oraz biblioteki IronOCR, potężnej biblioteki OCR (Optical Character Recognition) dla platformy .NET. .NET MAUI upraszcza tworzenie wielopłatformowych aplikacji mobilnych, zapewniając płynne wdrażanie na urządzeniach takich jak Android. Po przeczytaniu tego przewodnika będziesz w stanie stworzyć własną aplikację SDK do skanowania dokumentów, która z łatwością wyodrębni tekst z obrazów i zeskanowanych plików.

Jak korzystać z zestawu SDK skanera dokumentów w aplikacji .NET MAUI

  1. Zainstaluj bibliotekę IronOCR C#, aby korzystać z zestawu SDK skanera dokumentów.
  2. Zaprojektuj formularz .NET MAUI z niezbędnymi kontrolkami.
  3. Zrób zdjęcie za pomocą metody MediaPicker.CapturePhotoAsync.
  4. Przekonwertuj zrobione zdjęcie na strumień.
  5. Przekaz strumien do metody OcrInput LoadImage.
  6. Wykonaj OCR uzywajac metody IronTesseract Read.
  7. Wyswietl tekst dokumentu, korzystajac z wlasciwosci OcrResult Text.

IronOCR - Biblioteka OCR C#

IronOCR to nowoczesne oprogramowanie do rozpoznawania znakow (OCR) opracowane przez Iron Software, LLC, zaprojektowane do dokladnego i wydajnego konwertowania obrazow oraz zeskanowanych dokumentow na edytowalny tekst. Technologia OCR zrewolucjonizowala, jak firmy zajmuja sie przetwarzaniem dokumentow, ulatwiajac wydobycie wartosciowych informacji z roznych zrodel, takich jak zeskanowane dokumenty, PDFy i obrazy.

IronOCR wyróznia sie sposród rozwiazan OCR, dzieki zaawansowanym funkcjom, niezawodnej wydajnosci i latwosci integracji. Czy jestes deweloperem szukajacym integracji funkcji OCR do swoich aplikacji, czy firma poszukujaca sposobow na optymalizacje zarzadzania dokumentami, IronOCR oferuje kompleksowe rozwiazanie.

Najważniejsze cechy IronOCR

  1. Wysoka dokladnosc: IronOCR stosuje najnowoczesniejsze algorytmy i techniki uczenia maszynowego, aby osiagnac wyjatkowa dokladnosc w rozpoznawaniu tekstu. Moze precyzyjnie wydobywac tekst z zlozonych dokumentow, wlacznie z obrazami o niskiej rozdzielczosci lub slabej jakosci skanowania.
  2. Wsparcie dla wielu jezykow: IronOCR wspiera rozpoznawanie tekstu w ponad 125 jezykach, sprawiajac, ze jest odpowiednia dla firm dzialajacych w roznych srodowiskach jezykowych.
  3. Wstepne przetwarzanie obrazu: IronOCR zapewnia rozne mozliwosci wstepnego przetwarzania obrazow, takie jak redukcja szumow, regulacja kontrastu i prostowanie, aby zwiekszyc dokladnosc. Te techniki poprawiaja wyniki OCR, szczegolnie w przypadku znieksztalconych lub niedoskonalych obrazow.
  4. Wsparcie dla roznych formatow plikow: IronOCR obsluguje szeroki wachlarz formatow plikow, wlaczajac TIFF, JPEG, PNG i PDF, zapewniajac kompatybilnosc z roznymi zrodlami dokumentow.
  5. Opcje dostosowywania: Deweloperzy moga dostosowywac zachowanie IronOCR, by spelnic specyficzne wymagania, oferujac elastycznosc w parametrach rozpoznawania i integracji przeplywu pracy.
  6. Szybka i skalowalna: Optymalizowana dla wydajnosci, IronOCR szybko wyciaga tekst z duzych ilosci dokumentow. Jej skalowalna architektura zapewnia bezproblemowe dzialanie, niezaleznie od ilosci dokumentow.
  7. Integracja z aplikacjami .NET: IronOCR bezproblemowo integruje sie z aplikacjami .NET, zapewniajac latwe w uzyciu API do integracji funkcjonalnosci OCR. To upraszcza rozwój i przyspiesza wprowadzenie na rynek aplikacji z funkcjonalnoscią OCR.
  8. Klasyfikacja dokumentow i ekstrakcja danych: Poza podstawowym rozpoznawaniem tekstu, IronOCR oferuje zaawansowane funkcje do klasyfikacji dokumentow i ekstrakcji danych, identyfikujac konkretne pola danych, takie jak nazwy, adresy lub numery faktur.

Wymagania wstępne

  • Podstawowa znajomosc programowania w języku C#.
  • Zainstalowany Visual Studio 2022 z obciazeniem .NET MAUI.
  • Zainstalowana biblioteka IronOCR poprzez menedżer pakietow NuGet.

1. Ustawienie projektu .NET MAUI

  • Otworz Visual Studio 2022 i utworz nowy projekt .NET MAUI App.

Jak używać SDK do skanowania dokumentów w aplikacji .NET MAUI: Rysunek 1 - Projekt aplikacji .NET MAUI

  • Wybierz odpowiednia nazwe projektu i skonfiguruj ustawienia projektu.

Jak używać SDK do skanowania dokumentów w aplikacji .NET MAUI: Rysunek 2 - Konfiguracja projektu

  • Upewnij sie, ze masz zainstalowane wymagane SDK Android i iOS dla rozwoju urzadzen docelowych.

2. Instalowanie biblioteki IronOCR

  • Kliknij prawym przyciskiem myszy na swoje Rozwiazanie w Visual Studio.
    • Wybierz "Zarzadzaj pakietami NuGet dla rozwiazania" i w zakladce Przegladanie, wyszukaj "IronOCR".

Jak używać SDK do skanowania dokumentów w aplikacji .NET MAUI: Rysunek 3 - Pakiet NuGet IronOCR

  • Zainstaluj biblioteke IronOCR do swojego projektu.

3. Projektowanie UI

Zaczniemy od zaprojektowania ukladu naszej MainPage.xaml. Utworzymy prosty uklad z kontrolka obrazu do wyswietlania uchwyconego zdjecia, przyciskiem Capture do robienia zdjec oraz etykieta do wyswietlania wyodrebnionego tekstu.

Oto kod XAML dla MainPage.xaml:

<?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"
             xmlns:d="http://schemas.microsoft.com/dotnet/2021/maui/design"
             x:Class="DocumentScanner.MainPage">
    <ScrollView>
        <VerticalStackLayout Padding="30,0" Spacing="25">
            <Image Source="dotnet_bot.png"
                   HeightRequest="185"
                   Aspect="AspectFit"
                   SemanticProperties.Description="dot net bot in a race car number eight" />
            <Label Text="Welcome to .NET MAUI Document Scanner SDK"
                   style="{StaticResource Headline}"
                   SemanticProperties.HeadingLevel="Level1" />
            <Label Text="Using IronOCR"
                   style="{StaticResource SubHeadline}"
                   SemanticProperties.HeadingLevel="Level2"
                   SemanticProperties.Description="Welcome to .NET MAUI Document Scanner SDK" />
            <!-- Camera preview -->
            <Image x:Name="cameraPreview" />
            <!-- Capture button -->
            <Button Text="Capture" Clicked="OnCaptureClicked" />
            <!-- Text display area -->
            <Label x:Name="textLabel" Text="Recognized Text:"/>
        </VerticalStackLayout>
    </ScrollView>
</ContentPage>
XML

W tym ukladem:

  • Uzywamy VerticalStackLayout do ukladu pionowego.
  • Kontrolka Image o nazwie cameraPreview jest uzywana do wyswietlania uchwyconego zdjecia.
  • Kontrolka Button wywoluje obsluge zdarzenia OnCaptureClicked po kliknieciu.
  • Kontrolka Label o nazwie textLabel jest uzywana do wyswietlania wyodrebnionego tekstu.

Wynik

Jak używać SDK do skanowania dokumentów w aplikacji .NET MAUI: Rysunek 4 - Wynik MainPage.xaml

4. Implementacja funkcjonalnosci skanowania dokumentow

Aby zintegrowac funkcjonalnosc ekstrakcji tekstu do naszej aplikacji do skanowania dokumentow .NET MAUI, postepujemy zgodnie z tymi krokami:

  1. Wykorzystaj API Kamery: Wykorzystaj API kamery udostepnione przez .NET MAUI do uchwycenia plikow obrazow bezposrednio w aplikacji.
  2. Przekaz obraz do IronOCR: Po uchwyceniu obrazu, przekaz go do IronOCR do ekstrakcji tekstu, wykorzystujac jego solidna funkcjonalnosc.
  3. Wyswietl wyodrebniony tekst: Wyswietl wyodrebniony tekst w wyznaczonym miejscu na interfejsie uzytkownika aplikacji, aby uzytkownik mogl go zobaczyc.

Oto odpowiadajacy fragment kodu implementujacy te kroki:

using IronOcr;

namespace DocumentScanner
{
    public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            InitializeComponent();
        }

        private async void OnCaptureClicked(object sender, EventArgs e)
        {
            License.LicenseKey = "YOUR-LICENSE-KEY-HERE";
            try
            {
                // Request camera permissions
                var status = await Permissions.RequestAsync<Permissions.Camera>();
                if (status == PermissionStatus.Granted)
                {
                    // Take photo
                    var photo = await MediaPicker.CapturePhotoAsync();
                    if (photo != null)
                    {
                        // Display captured photo in Image
                        cameraPreview.Source = ImageSource.FromStream(() => photo.OpenReadAsync().Result);
                        using (var stream = await photo.OpenReadAsync())
                        {
                            // Use a stream from the captured photo for OCR
                            var ocr = new IronTesseract();
                            using var ocrInput = new OcrInput();
                            ocrInput.LoadImage(stream);
                            var ocrResult = ocr.Read(ocrInput);
                            if (string.IsNullOrEmpty(ocrResult.Text))
                            {
                                await DisplayAlert("Error", "No Text Detected!", "OK");
                            }
                            else
                            {
                                await DisplayAlert("Text Detected!", ocrResult.Text, "OK");
                                // Display extracted text
                                textLabel.Text = ocrResult.Text;
                            }
                        }
                    }
                }
                else
                {
                    // Camera permission denied
                    await DisplayAlert("Permission Denied", "Camera permission is required to capture photos.", "OK");
                }
            }
            catch (Exception ex)
            {
                // Handle exception
                await DisplayAlert("Error", ex.Message, "OK");
            }
        }
    }
}

Wyjaśnienie kodu

Przeanalizujmy kod krok po kroku:

  • W pliku MainPage.xaml.cs zdefiniowana jest metoda OnCaptureClicked do obslugi zdarzenia klikniecia przycisku Capture.
  • Ustawiony jest klucz licencyjny IronOCR, niezbedny do korzystania z biblioteki IronOCR. Zastąp "YOUR-LICENSE-KEY-HERE" swoim własnym kluczem licencyjnym.
  • Uprawnienia kamery sa wymagane za pomoca Permissions.RequestAsync<Permissions.Camera>(), aby upewnic sie, ze aplikacja ma dostep do kamery urzadzenia.
  • Wywolano MediaPicker.CapturePhotoAsync(), aby zrobic zdjecie przy uzyciu kamery. Jesli sie powiedzie, zdjecie jest wyswietlane w kontrolce cameraPreview Image.
  • Strumien z uchwyconego zdjecia jest otwierany i uzywany jako wejsciowy dla IronOCR, tworzac instancje IronTesseract, ladujac strumien obrazu do obiektu OcrInput i wywolujac metode Read dla wykonania OCR.
  • Jesli sie powiedzie, wyodrebniony tekst jest wyswietlany w kontrolce textLabel. Jesli nie wykryto tekstu, wyswietla sie komunikat o bledzie za pomoca DisplayAlert.

Dla dalszego eksplorowania IronOCR i dodatkowych przykladow kodu, odwiedz strone przyklady kodu.

5. Testowanie aplikacji skanujacej dokumenty

  • Uruchom aplikacje na roznych platformach (Android, iOS i Windows), aby zapewnic kompatybilnosc miedzyplatformowa.
  • Przetestuj rozne scenariusze, takie jak skanowanie dokumentow z roznych czcionek, rozmiarow i orientacji.
  • Zweryfikuj, czy wyodrebniony tekst jest dokladny i prawidlowo wyswietlany na interfejsie uzytkownika.

Wyjście - Zeskanowany Dokument bez Tekstu

Jak używać SDK do skanowania dokumentów w aplikacji .NET MAUI: Rysunek 5 - Wynik tworzenia zeskanowanego PDF

Wyjście - Zeskanowany Dokument z Tekstem

Jak używać SDK do skanowania dokumentów w aplikacji .NET MAUI: Rysunek 6 - Zeskanowana dokumentacja

Wnioski

Podazajac za tym tutorialem, nauczyliscie sie, jak uzywac SDK skanera dokumentow IronOCR w obrebie .NET MAUI. Aplikacje skanujace dokumenty maja wiele praktycznych zastosowan, od digitalizacji dokumentow papierowych po wydobywanie informacji przechowywanych na paragonach i fakturach. Wykorzystujac potezne mozliwosci IronOCR i elastycznosc .NET MAUI, mozecie budowac bogate w funkcje aplikacje skanujace dokumenty, ktore spełniają rozne przypadki uzycia. Eksperymentuj z roznymi funkcjonalnosciami, eksploruj dodatkowe biblioteki i nadal udoskonalaj swoje umiejetnosci, aby tworzyc jeszcze bardziej imponujace aplikacje.

Dla bardziej szczegolowych informacji na temat mozliwosci IronOCR, odwiedz te strone dokumentacja.

IronOCR zapewnia darmowa wersje probna, aby przetestowac jego pelna funkcjonalnosc w trybie komercyjnym. Jej wieczysta licencja lite zaczyna się od $999. Pobierz biblioteke z strony pobierania i wyproboj.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta