< 戻る
印刷

Javaを使ってPDFを画像に変換

目次

はじめに

以下のチュートリアルでは、ホスティングされたJPedalクラウドAPIを使ってPDFから画像に変換する方法を紹介します。セルフホスト型のJPedalマイクロサービスをセットアップすることもできます。

上記のサービスはHTTPリクエストでアクセスできますが、このチュートリアルでは REST API のシンプルな Java ラッパーを提供するオープンソースの Java IDRCloudClient を使用します。

前提条件

始める前に、JDKの最新バージョン(バージョン8以上)がインストールされていることを確認してください。詳しくはJavaのウェブサイトをご覧ください。

サンプルコード

以下はPDFを画像に変換する基本的なコード例です。設定オプションと高度な機能は下記にあります。

				
					import java.util.Map;

public final class ExampleUsage {

    public static void main(final String[] args) {

        final IDRCloudClient client = new IDRCloudClient("https://my-self-hosted-service.com/" + IDRCloudClient.<a href="https://www.intwk.co.jp/jpedal/" title="PDFドキュメントを扱う必要のあるJava開発者のためのPDFライブラリです。このライブラリは、PDFファイルを扱う際の一般的な問題を解決します。" hreflang="ja" onover-preload="1">JPEDAL</a>);

        
        final HashMap<string string> params = new HashMap();
        params.put("input", IDRCloudClient.UPLOAD);
        params.put("file", "<a href="https://pub.dev/packages/path" target="_blank" title="A string-based path manipulation library. All of the path operations you know and love, with solid support for Windows, POSIX (Linux and Mac OS X), and the web." hreflang="en-us">path</a>/to/file.pdf");
        params.put("settings","{\"mode\":\"convertToImages\",\"format\":\"png\"}");
        try {
            final Map<string string> results = client.convert(params);

            System.out.println("   ---------   ");
            System.out.println(results.get("previewUrl"));

            IDRCloudClient.downloadResults(results, "path/to/outputDir", "example");
        } catch (final ClientException | InterruptedException e) {
            e.printStackTrace();
        }
    }
} </string></string>
				
			

結果をコールバックURLに返信

JPedal マイクロサービスは、抽出の完了時にステータスを送信するコールバック URL を受け付けます。コールバックURLを使用すると、抽出がいつ完了したかを判断するためにサービスをポーリングする必要がなくなります。
コールバックURLは、以下のようにparamsマップに渡すことができます。

				
					final HashMap<string string> params = new HashMap();
params.put("input", IDRCloudClient.UPLOAD);
params.put("file", "path/to/file.pdf");
params.put("callbackUrl", "<a href="https://pub.dev/packages/http" target="_blank" title="A composable, multi-platform, Future-based API for HTTP requests." hreflang="en-us">http</a>://listener.url");
params.put("settings","{\"mode\":\"convertToImages\",\"format\":\"png\"}"); </string>
				
			

設定オプション

JPedal APIは、抽出をカスタマイズするためのキーと値のペアの設定オプションを含む文字列化されたJSONオブジェクトを受け付けます。この設定は、cURLコマンドのURLの前に追加する必要があります。PDFを画像に変換するための設定オプションの完全なリストはこちらからご覧いただけます。

				
					params.put("settings", "{\"key\":\"value\",\"key\":\"value\"}");
				
			

URLによるアップロード

ローカルファイルをアップロードするだけでなく、JPedal Microserviceがダウンロードして変換を実行するURLを提供することもできます。そのためには、parameters変数のinputとfileの値を以下のように置き換えてください。

				
					params.put("input", IDRCloudClient.DOWNLOAD);
params.put("url", "http://exampleURL/exampleFile.pdf");
				
			

認証の使用

PDFを画像に変換するためにユーザ名とパスワードを必要とする独自のJPedalマイクロサービスをデプロイする場合、変換のたびにユーザ名とパスワードを提供する必要があります。これらは、URLの前にユーザ名とパスワードを持つユーザフラグを追加することで提供されます。

				
					params.put("username","yourUsername");
params.put("password","yourPassword");
				
			
MENU
PAGE TOP