IRONSOFTWAREHOME
IRONBARCODEの使用

.NET MAUIアプリケーションでのドキュメントスキャナーSDKの使用方法

Curtis Chau
Curtis Chau
Updated: 2026年6月28日

モバイル技術の進化により、Scanbot SDKやネイティブSDKのようなドキュメントスキャンアプリは、個人および企業にとって不可欠なツールとなっています。 このチュートリアルでは、最新バージョン for .NETマルチプラットフォームApp UI(MAUI)と.NET用の強力なOCR(光学文字認識)ライブラリであるIronOCRを使用してドキュメントスキャナーアプリを作成する方法を探ります。 .NET MAUIは、クロスプラットフォームのモバイルアプリの作成を簡素化し、Androidなどのデバイスでのシームレスなデプロイメントを保証します。 このガイドの終わりまでに、画像やスキャンファイルから簡単にテキストを抽出できる独自のドキュメントスキャナーSDKアプリを開発できるようになります。

.NET MAUIアプリケーションでのドキュメントスキャナーSDKの使用方法

  1. ドキュメントスキャナーSDKを使用するために、IronOCR C#ライブラリをインストールします。
  2. 必要なコントロールを備えた.NET MAUIフォームを設計します。
  3. MediaPicker.CapturePhotoAsyncメソッドを使用して写真を撮影します。
  4. 撮影された写真をStreamに変換します。
  5. ストリームをOcrInputのLoadImageメソッドに渡します。
  6. IronTesseractのReadメソッドを使用してOCRを実行します。
  7. OcrResultのTextプロパティを使用してドキュメントテキストを表示します。

IronOCR - C# OCR ライブラリ

IronOCRは、Iron Software, LLCによって開発された最先端の光学文字認識(OCR)ソフトウェアで、画像やスキャンドキュメントを正確かつ効率的に編集可能なテキストに変換するように設計されています。 OCR技術は、スキャンドキュメント、PDF、画像などのさまざまな情報源から貴重な情報を抽出するのを容易にし、企業がドキュメントを処理する方法を革命的に変えました。

IronOCRは、その高度な機能、堅牢なパフォーマンス、簡単な統合によってOCRソリューションの中で注目を集めています。 アプリケーションにOCR機能を組み込みたい開発者やドキュメント管理プロセスを効率化したい企業にとって、IronOCRは包括的なソリューションを提供します。

IronOCRの主な機能

  1. 高精度: IronOCRは、最先端のアルゴリズムと機械学習技術を使用して、テキスト認識において卓越した精度を達成します。 それは、低解像度や品質の低いスキャンを含む複雑なドキュメントから正確にテキストを抽出できます。
  2. 多言語サポート: IronOCRは125以上の言語でのテキスト認識をサポートしており、多様な言語環境で事業を展開する企業に適しています。
  3. 画像前処理: IronOCRは、ノイズ除去、コントラスト調整、傾き補正など、精度を向上させるためのさまざまな画像前処理機能を提供します。 これらの技術は、特に歪んだり不完全な画像に対するOCR結果を改善します。
  4. さまざまなファイル形式のサポート: IronOCRは、TIFF、JPEG、PNG、PDFなど多種多様なファイル形式をサポートしており、さまざまなドキュメントソースに対応可能です。
  5. カスタマイズオプション: 開発者はIronOCRの動作を特定の要件に合わせてカスタマイズでき、認識パラメータとワークフローの統合において柔軟性を提供します。
  6. 高速かつスケーラブル: パフォーマンスに最適化されており、IronOCRは大量のドキュメントから迅速にテキストを抽出します。 そのスケーラブルなアーキテクチャは、ドキュメント量に関係なくシームレスな操作を保証します。
  7. .NETアプリケーションとの統合: IronOCRは.NETアプリケーションにスムーズに統合され、OCR機能を組み込むための使いやすいAPIを提供します。 このため、開発が容易になり、OCR対応アプリケーションの市場投入時間が短縮されます。
  8. ドキュメント分類とデータ抽出: 基本的なテキスト認識を超えて、IronOCRは名前、住所、請求書番号など、特定のデータフィールドを識別するドキュメント分類とデータ抽出の高度な機能を提供します。

前提条件

  • 基本的なC#プログラミングの知識。
  • .NET MAUIワークロードをインストールしたVisual Studio 2022。
  • NuGetパッケージマネージャを介してインストールされたIronOCRパッケージライブラリ。

1. .NET MAUIプロジェクトのセットアップ

  • Visual Studio 2022を開き、新しい.NET MAUIアプリプロジェクトを作成します。

.NET MAUIアプリケーションでドキュメントスキャナーSDKを使用する方法:図1 - .NET MAUI Appプロジェクト

  • 適切なプロジェクト名を選択し、プロジェクト設定を構成します。

.NET MAUIアプリケーションでドキュメントスキャナーSDKを使用する方法:図2 - プロジェクト設定

  • ターゲットプラットフォームデバイス開発用に必要なAndroidおよびiOS SDKをインストールしていることを確認します。

2. IronOCRライブラリのインストール

  • Visual Studioでソリューションを右クリックします。
  • "Manage NuGet Packages for Solution"を選択し、ブラウズタブで"IronOCR"を検索します。

.NET MAUIアプリケーションでドキュメントスキャナーSDKを使用する方法:図3 - IronOCR NuGetパッケージ

  • プロジェクトにIronOCRライブラリをインストールします。

3. UIの設計

まず、MainPage.xamlのレイアウトを設計することから始めます。 キャプチャされた写真を表示するためのイメージコントロール、写真を撮るためのキャプチャボタン、抽出されたテキストを表示するためのラベルを備えた簡単なレイアウトを作成します。

MainPage.xamlの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

このレイアウトでは:

  • コントロールを垂直にスタックさせるためにVerticalStackLayoutを使用します。
  • cameraPreviewという名前のImageコントロールは、キャプチャされた写真を表示するために使用されます。
  • ButtonコントロールはクリックされるとOnCaptureClickedイベントハンドラをトリガーします。
  • textLabelという名前のLabelコントロールは、抽出されたテキストを表示するために使用されます。

出力

.NET MAUIアプリケーションでドキュメントスキャナーSDKを使用する方法:図4 - MainPage.xaml出力

4. ドキュメントスキャン機能の実装

.NET MAUIドキュメントスキャンアプリにテキスト抽出機能を統合するために、次のステップに従います:

  1. カメラAPIを利用: アプリケーション内で直接画像ファイルをキャプチャするために、.NET MAUIが提供するカメラAPIを活用します。
  2. 画像をIronOCRに渡します: 画像がキャプチャされたら、IronOCRに渡してその強力な機能を利用してテキスト抽出を行います。
  3. 抽出されたテキストを表示: 抽出されたテキストをユーザーインターフェイス上の指定されたエリアに表示し、ユーザーに閲覧させます。

これらのステップを実装する対応するコードスニペットはこちらです:

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");
            }
        }
    }
}

コードの説明

コードをステップバイステップで分解します:

  • MainPage.xaml.csファイルでは、OnCaptureClickedメソッドがキャプチャボタンのクリックイベントを処理するために定義されています。
  • IronOCRライブラリを使用するのに必要なIronOCRのライセンスキーが設定されます。 実際のライセンスキーを"YOUR-LICENSE-KEY-HERE"に置き換えてください。
  • アプリがデバイスのカメラにアクセスできるようにするために、**Permissions.RequestAsync<Permissions.Camera>()**を使用してカメラ権限を要求します。
  • MediaPicker.CapturePhotoAsync()が呼び出され、カメラを使用して写真を撮影します。 成功する場合、写真はcameraPreview Imageコントロールに表示されます。
  • 撮影された写真からストリームが開かれ、IronOCRに入力として使用され、IronTesseractインスタンスを作成し、画像ストリームをOcrInputオブジェクトにロードし、OCRを実行するためにReadメソッドを呼び出します。 成功すると、抽出されたテキストはtextLabelコントロールに表示されます。 テキストが検出されない場合、DisplayAlertを使用してエラーメッセージが表示されます。

IronOCRや追加のコードサンプルについての詳細な探求のために、このコード例ページを訪問してください。

5. ドキュメントスキャナーアプリのテスト

  • 各プラットフォーム(Android、iOS、Windows)上でアプリを実行し、クロスプラットフォーム互換性を確認します。
  • さまざまなフォント、サイズ、向きのドキュメントをスキャンするなど、異なるシナリオをテストします。
  • 抽出されたテキストが正確で、UI上に正しく表示されていることを確認します。

出力 - テキストなしのスキャンされたドキュメント

.NET MAUIアプリケーションでドキュメントスキャナーSDKを使用する方法:図5 - スキャンされたPDF作成出力

出力 - テキストを含むスキャンされたドキュメント

.NET MAUIアプリケーションでドキュメントスキャナーSDKを使用する方法:図6 - スキャンされたドキュメント

結論

このチュートリアルに従うことで、.NET MAUI内でIronOCRドキュメントスキャナーSDKを使用する方法を学びました。 ドキュメントスキャンアプリは、紙のドキュメントをデジタル化することから、受領書や請求書から保存された情報を抽出することまで、多くの実用的な応用を持っています。 IronOCRの強力な機能と.NET MAUIの柔軟性を活用して、さまざまな使用ケースに対応する機能豊富なドキュメントスキャナーアプリを構築できます。 さまざまな機能を試し、追加のライブラリを探求し、さらなる印象的なアプリを作成するためにスキルを磨き続けてください。

IronOCRの機能についての詳細情報は、このドキュメントページをご覧ください。

IronOCRは、商業モードで完全な機能をテストできる無料の試用版を提供しています。 その永続的なLiteライセンスは$999から始まります。 ライブラリをダウンロードページからダウンロードして試してみてください。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

...
詳しく読む

関連する記事

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
無料のライブデモを予約する
Booking Badge

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。