スキャンされたPDFを検索可能なドキュメントに変換する方法

スキャンされたPDFを検索可能なドキュメントに変換する方法

多くの貴重なドキュメントはスキャンされたPDFに閉じ込められており、検索エンジンや生産性ツールに検索されず、アクセスできなくなります。

現実世界問題

スキャンされたPDF契約、書籍、またはアーカイブは、テキストが抽出されていない限り、検索、インデックスまたはコピーすることはできません。

ソリューション概要

Aspose.OCR for .NET は、スキャンされた PDF プロセスをバッチし、さまざまなフォーマットでテキストを抽出および輸出することができます - 検索可能で、インデックス可能であり、デジタルワークフローまたは遵守のための準備ができています。

原則

  • Visual Studio 2019 以降
  • .NET 6.0 またはそれ以降(または .Net Framework 4.6.2+)
  • ASPOSE.OCR for .NET から NuGet
  • 基本的なC#プログラミング経験
PM> Install-Package Aspose.OCR

ステップ・ステップ・実施

ステップ1:インストールおよび設定 Aspose.OCR

using Aspose.OCR;

ステップ2:スキャンされたPDFファイルを追加する

OcrInput input = new OcrInput(InputType.PDF);
input.Add("archive1.pdf");
input.Add("books.pdf");

ステップ3:PDFの認識設定を設定する

RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
settings.DetectAreasMode = DetectAreasMode.AUTO; // Best for mixed document layouts

ステップ4:スキャンされたPDFでOCRを実行する

AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);

ステップ5:検索可能なフォーマットへの輸出

foreach (RecognitionResult result in results)
{
    result.Save("archive_searchable.pdf", SaveFormat.Pdf);   // Searchable PDF
    result.Save("archive_text.txt", SaveFormat.Text);         // Plain text
    result.Save("archive_word.docx", SaveFormat.Docx);       // Word document
}

ステップ6:エラー処理と認証を追加する

try
{
    AsposeOcr ocr = new AsposeOcr();
    List<RecognitionResult> results = ocr.Recognize(input, settings);
    // Further processing
}
catch (Exception ex)
{
    Console.WriteLine($"Error: {ex.Message}");
}

ステップ7:マルチページおよび大型PDFの最適化

  • 複数のページを持つPDFには、ファイルを追加し、必要に応じてページの範囲を設定します。
  • ドキュメントレイアウトおよび言語のためのトゥーン設定
  • すべてのファイルをディレクトリで処理するバッチ
foreach (string file in Directory.GetFiles("./pdfs", "*.pdf"))
{
    input.Add(file);
}

ステップ8:完璧な例

using Aspose.OCR;
using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        try
        {
            OcrInput input = new OcrInput(InputType.PDF);
            input.Add("archive1.pdf");
            input.Add("books.pdf");

            RecognitionSettings settings = new RecognitionSettings();
            settings.Language = Language.English;
            settings.DetectAreasMode = DetectAreasMode.AUTO;

            AsposeOcr ocr = new AsposeOcr();
            List<RecognitionResult> results = ocr.Recognize(input, settings);

            foreach (RecognitionResult result in results)
            {
                result.Save("archive_searchable.pdf", SaveFormat.Pdf);
                result.Save("archive_text.txt", SaveFormat.Text);
                result.Save("archive_word.docx", SaveFormat.Docx);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error: {ex.Message}");
        }
    }
}

ケースとアプリケーションの使用

デジタルアーカイブ検索

静的でスキャンされたアーカイブを図書館、法律会社、または企業の検索可能でインデックスされたリソースに変換します。

規制および遵守デジタル化

検証および監査のためにスキャンされた遵守文書からテキストを抽出します。

学術・書籍出版

テキストブックや研究論文をデジタルアクセス、電子学習、または配布のために数値化します。

共通の課題と解決策

課題1:低品質またはスケートスキャン

ソリューション: 明確性のためのプレプロセス; AUTO モードを使用して強力な配置処理を行います。

チャレンジ2:多言語PDF

ソリューション: 言語設定を調整し、サンプルファイルでテストします。

チャレンジ3:非常に大きいまたはバッチファイル

ソリューション: 管理可能なバッチで処理し、メモリの使用を監視します。

パフォーマンス考慮

  • 最大効率のためのバッチプロセス
  • 良い品質のスキャンされたPDFを使用する
  • 使用後のOCRオブジェクトの使用

ベストプラクティス

  • 統合前にソースPDFに対して出力を確認する
  • より簡単な管理のためにテーマまたは部門によってPDFを組織する
  • すべてのスキャンおよび処理されたファイルをセキュリティに
  • Aspose.OCR の最新バージョンを最適な正確さのために使用してください。

高度なシナリオ

シナリオ1:データパイプのためのJSONへの輸出

foreach (RecognitionResult result in results)
{
    result.Save("archive_data.json", SaveFormat.Json);
}

シナリオ2:セレクティブページ OCR

input.Add("compliance.pdf", 0, 5); // Recognize first 5 pages only

結論

Aspose.OCR Scanned PDF to Text for .NET では、スキャンされた PDF を現代のワークフローで検索可能で編集可能なドキュメントに迅速に変換できます。

より先進的なコードとヒントを見つける ASPOSE.OCR for .NET API リファレンス .

 日本語