多くのビジネスワークフローでは、スキャンされた PDF ドキュメントを検索可能または編集可能なテキストに変換する必要があります。Extract Text from Scanned PDFs with Aspose.PDF OCR in C# チュートリアルでは、Aspose.PDF for .NET に統合された OCR エンジンを活用して、画像ベースのページからプレーンテキストを抽出する方法を示します。このガイドに従うことで、サイズや言語に関係なく、任意のスキャン PDF で動作するすぐに実行可能なソリューションが得られます。
Aspose.PDF OCR SDK を使用してスキャンされた PDF からテキストを抽出
スキャンされた PDF は画像のみを含むため、一般的なテキスト抽出 API は何も返しません。OCR(光学文字認識)はこれらの画像を機械が読み取れる文字に変換し、インデックス作成、データマイニング、下流処理を可能にします。C# で OCR を自動化すると、手動のコピー&ペースト作業が不要になり、精度が向上し、大量のドキュメントバッチでもスケールします。
Aspose.PDF は Aspose.Pdf.Ocr 名前空間を提供し、OcrTextRecognitionOptions、OcrTextAbsorber、および言語列挙体が含まれています。ライブラリは NuGet を通じて配布されています。次のコマンドでインストールします:
Install-Package Aspose.PDF
詳細については、Aspose.PDF 製品ページをご覧ください。
C# で Aspose.PDF OCR を使用してスキャンされた PDF からテキストを抽出
- スキャンした PDF を
Aspose.Pdf.Documentにロードします。 - OCR オプション(言語、解像度、ページ区切り)を構成します。
OcrTextAbsorberをドキュメントのページコレクションに適用します。- 認識されたテキストを取得し、保存します。
この例では、スキャンされた PDF を読み込み、OCR を構成し、テキストを抽出し、結果をファイルに書き込む方法を C# で示しています。
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void RecognizeTextWithOcr()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
// Configure OCR recognition options
var options = new Aspose.Pdf.Ocr.OcrTextRecognitionOptions
{
Language = Aspose.Pdf.Ocr.OcrLanguage.English,
Resolution = 300,
PageSeparator = "\n\n"
};
// Recognize text from all pages
var absorber = new Aspose.Pdf.Ocr.OcrTextAbsorber(options);
document.Pages.Accept(absorber);
// Save recognized text
System.IO.File.WriteAllText(dataDir + "recognized-text.txt", absorber.Text);
}
}
Aspose.PDF このタスクに重要な機能
- Integrated OCR engine – 外部依存関係は不要です。OCRエンジンは
Aspose.Pdf.Ocr名前空間にあります。 - Language selection –
OcrLanguage列挙体を使用して、認識精度向上のために辞書を指定できます。 - Resolution control – DPI を上げると文字の忠実度が向上し、特に薄いスキャンに効果的です。
- PageSeparator – 出力テキストでページを区切るためのカスタマイズ可能な文字列です。
- Thread‑safe page collection – 大きな PDF の並列処理を可能にします。
これらの機能により、任意のスキャンされた PDF からテキストを抽出するための堅牢な単一ライブラリ ソリューションが実現します。
C#でのインストールとセットアップ
- Visual Studio で .NET ソリューションを開きます。
- Package Manager Console を開き、
Install-Package Aspose.PDFを実行します。 - クラス ファイルの先頭に
using Aspose.Pdf;とusing Aspose.Pdf.Ocr;を追加します。 - 一時ライセンスまたはフル ライセンスがあることを確認してください。ライセンスがない場合、出力に透かしが入る可能性があります。
ライセンスの詳細については、一時ライセンスページをご覧ください。
C#でのステップバイステップ実装
このセクションは何に答えますか? テキストを抽出する正確なコード手順は何ですか?
- ドキュメントを初期化する
var pdfPath = "path/to/scanned.pdf"; var document = new Document(pdfPath); - OCR オプションを作成する
var ocrOptions = new OcrTextRecognitionOptions { Language = OcrLanguage.English, Resolution = 300, PageSeparator = "\n--- Page Break ---\n" }; - アブサーバーを実行する
var absorber = new OcrTextAbsorber(ocrOptions); document.Pages.Accept(absorber); - 抽出されたテキストにアクセスする
string extractedText = absorber.Text; - テキストを保存または処理する
System.IO.File.WriteAllText("output.txt", extractedText);
コードは上記の包括的な例と同じフローに従いますが、ロジックを消化しやすいステップに分割します。
無料ライセンスを取得
Aspose.PDF を無料で評価するには、ここで一時ライセンスをリクエストしてください: https://purchase.aspose.com/temporary-license/
無料の追加リソース
結論
このガイドでは、C# で Aspose.PDF OCR を使用してスキャンされた PDF からテキストを抽出する方法を段階的に説明しました。ライブラリのインストール方法、精度向上のための OCR オプションの設定、クリーンな抽出パイプラインの実装、そして大規模ドキュメント向けのパフォーマンス最適化の適用方法を学びました。これらの手法を使用すれば、.NET 開発者は画像のみの PDF を検索可能で編集可能なテキストストリームに変換できます。
よくある質問
C#でAspose.PDFを使用してスキャンされたPDFからテキストを抽出するにはどうすればよいですか?
Documentを作成し、OcrTextRecognitionOptionsを設定し、ページ上でOcrTextAbsorberを実行し、Textプロパティを読み取ります。Aspose.PDF がサポートしている OCR 言語はどれですか?
このライブラリはOcrLanguage列挙体を介して多数の言語をサポートしており、英語、フランス語、ドイツ語、スペイン語、中国語などが含まれます。低解像度のスキャンで OCR の精度を向上させるにはどうすればよいですか?
Resolutionを上げる(例:300 DPI)、正しい言語を選択し、コントラストを高めるために画像の前処理を検討してください。大きな PDF を並列で処理しても安全ですか?
はい、ドキュメントをページ範囲に分割し、各範囲を別々のスレッドで処理し、メモリ使用量を監視すれば安全です。OCR 機能に必要なライセンスは何ですか?
OCR は有効な Aspose.PDF for .NET ライセンスがあれば完全に利用可能です。評価用に一時ライセンスを取得することもできます。OCR 設定に関する詳細なドキュメントはどこで見つけられますか?
詳細な OCR 設定ガイドは Aspose.PDF OCR 設定ドキュメント(https://docs.aspose.com/pdf/net/)で入手できます。
