スキャンしたPDFを検索可能に

画像はデータ共有に不可欠な要素の 1 つであり、一部のアプリケーションではソース コンテンツが PDF 形式で直接レンダリングされます。ただし、この利便性により、ドキュメント内の特定のコンテンツを検索する必要がある場合にコストが増加します。そのシナリオでは、関連する情報を見つけるためにドキュメント全体を手動で調べる必要があります。したがって、推奨されるアプローチは常に、検索可能で管理しやすいファイルを生成することです。ただし、ソースでドキュメントの形式を制御できない PDF ファイルを受け取った場合は、データのアーカイブとインデックス作成のために、そのようなドキュメントを検索可能な形式に変換する必要があります。この記事では、オンライン PDF OCR を実行し、スキャンされた / イメージ PDF ファイルを検索可能な / テキスト PDF ドキュメントに変換する方法について詳しく説明します。

PDF処理API

Aspose.PDF Cloud は、受賞歴のある REST アーキテクチャ ベースの PDF 作成および操作 API です。同じ API を使用して、EPUB を PDF に変換HTML を PDF に変換XPS を PDF に変換DOC および Doc X を PDF に変換XPS を PDF に変換、新規または既存の PDF ファイルへの画像の挿入など、さまざまな操作を実行できます。これらの操作はすべてクラウドで実行されるため、どのプラットフォームからでも API にアクセスできます。

cURL コマンドを使用した PDF OCR

cURL コマンドは、コマンド ライン ターミナルから Aspose.PDF Cloud にアクセスする簡単な方法です。ただし、API にアクセスする前に、まず Aspose.Cloud ダッシュボード にアクセスし、GitHub または Google アカウントをお持ちの場合はサインアップするだけです。そうでない場合は、新しいアカウントの作成 ボタンをクリックして必要な情報を入力します。資格情報を使用してダッシュボードにログインし、ダッシュボードからアプリケーション セクションを展開して、クライアント資格情報セクションまで下にスクロールすると、クライアント ID とクライアント シークレットの詳細が表示されます。

次のステップでは、コマンド プロンプトから API にアクセスできるように JSON Web Token (JWT) を生成します。

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4&client_secret=d87269aade6a46cdc295b711e26809af" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

JWT トークンを取得したら、コマンド ライン ターミナルで次の cURL コマンドを実行します。

curl -X PUT "https://api.aspose.cloud/v3.0/pdf/ocrscan.pdf/ocr?lang=eng" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

スキャンしたPDFをJavaで検索可能な形式に変換する

Java プログラマーの利便性を高めるために、Aspose.PDF Cloud のラッパーが作成され、Cloud API のすべての機能に Java コードで簡単にアクセスできるようになりました。同様に、スキャンした PDF に対して OCR 操作を実行するには、Aspose.PDF Cloud SDK for Java を使用する必要があります。

したがって、最初のステップは SKD をシステムにインストールすることです。Cloud SDK は Maven および GitHub からダウンロードできます。次に、pom.xml ファイルに次の詳細を追加して、Aspose.Pdf.jar をダウンロードし、Maven ビルド プロジェクトで使用します。

<repositories>
 <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>https://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>
<dependencies>
 <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-pdf-cloud</artifactId>
        <version>21.1.0</version>
        <scope>compile</scope>
    </dependency>
 </dependencies>

詳細については、Aspose.Cloud SDKのインストール方法をご覧ください。

以下の手順は、イメージ PDF ファイルに対する COR 操作のプロセスを定義します。

  • 最初のステップは、ClientIDとクライアントシークレットの詳細(Aspose.Cloudダッシュボードで入手可能)を渡しながらPdfApiオブジェクトを作成することです。
  • File インスタンスを作成し、画像ファイルの場所を引数として渡します。
  • uploadFile(…) メソッドを呼び出し、PDF ドキュメントと File インスタンスを引数として渡します。
  • 次のステップは、文字列インスタンスを作成し、その値をソース ファイルに含まれる言語コード (つまり、「rus,eng」) に設定することです。
  • 最後に、PdfApiのputSearchableDocument(…)メソッドを呼び出し、入力PDFファイル名と言語コードを引数として渡します。

OCR エンジンの言語。サポートされる値: eng、ara、bel、ben、bul、ces、dan、deu、ell、fin、fra、heb、hin、ind、isl、ita、jpn、kor、nld、nor、pol、por、ron、rus、spa、swe、tha、tur、ukr、vie、chisim、chitra、またはそれらの組み合わせ (例: eng、rus)。

// https://dashboard.aspose.cloud/ から ClientID と ClientSecret を取得します。
String clientId = "a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4";
String clientSecret = "d87269aade6a46cdc295b711e26809af";
				
// PdfApiインスタンスを作成する
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// 入力PDF文書
String name = "ocrscan.pdf";	        
			    
// ローカルシステムからファイルを読み込む
File file = new File("/Users/nayyershahbaz/Downloads/" + name);
// ファイルをクラウドストレージにアップロードする
FilesUploadResult uploadResponse = pdfApi.uploadFile(name, file, null);
				
// 画像ファイルで使用されている言語
String lang = "rus,eng";
				
//  画像PDF文書のOCRを実行する
AsposeResponse response = pdfApi.putSearchableDocument(name, null, null, lang);
assertEquals(200, (int)response.getCode());
OCR結果のプレビュー

画像 1:- OCR 出力プレビュー。

上記の例で使用されているサンプル PDF ファイルは、次のリンクからダウンロードできます。

結論

この記事では、オンライン PDF OCR 操作を実行し、スキャンした PDF ドキュメントを検索可能な PDF ドキュメントに変換する簡単な手順をいくつか説明しました。OCR 操作以外にも、SDK は非常に強力で、さまざまな操作を実行できます。詳細については、Aspose.PDF Cloud Features を参照してください。