この記事では、ComPDFKit のPDF to Word APIを使用して、Java アプリケーションで PDF を Word に変換する方法を説明します。当社の API を使用すると、1 か月あたり最大1000 個の PDF ファイルを無料で変換できます。API キーにアクセスするために必要なのは、無料アカウントを作成することだけです。
ドキュメント変換は、当社の 30 を超えるPDF API ツールの 1 つにすぎません。当社の変換ツールを他のツールと組み合わせて、複雑なドキュメント処理ワークフローを作成できます。さまざまなファイル形式を PDF から、または PDF に変換できるほか、次の操作も実行できます。
- 特定のPDFページを結合、分割、挿入、抽出、削除します
- OCR、透かし、PDFの圧縮
- ドキュメントの比較(コンテンツの比較とオーバーレイの比較を含む)
ComPDFKit API の処理ワークフローは非常にシンプルです。タスクの作成、ファイルのアップロード、タスクの実行、結果ファイルのダウンロードという 4 つの基本的なリクエスト命令で構成されています。これらの 4 つのリクエストを通じて、対応する PDF ツールを選択してファイルを処理し、結果ファイルのダウンロード リンクを取得できます。
ComPDFKit は、シンプルな API リクエストで、テキスト、ページ レイアウト、列、書式、グラフィックなどを保持しながら、PDF を Word に正確に変換することをサポートします。また、PDF ファイル内のハイライト、下線、波線、取り消し線を認識して抽出し、Word に変換した後もこれらの注釈機能を保持します。さらに、PDF にハイパーリンクが含まれている場合でも、変換後もリンクが適切に機能し続けるようにすることができます。
PDF から Word API ツールにアクセスし、PDF 変換を処理する手順は次のとおりです。
当社のWeb サイトにアクセスすると、無料アカウントの作成を促す以下のページが表示されます。
アカウントを作成すると、プランの詳細の概要を示す以下のページが表示されます。
ダッシュボードに表示されているように、1 か月あたり 1,000 件のドキュメントを処理でき、すべての PDF API ツールにアクセスできるようになります。
メールを確認したら、ダッシュボードから API キーを取得できます。左側のメニューで、「API キー」をクリックします。キーの概要を示す次のページが表示されます。
ここで、コンソールから取得したpublicKeyおよびsecretKey認証戻り値のpublic_keyとsecret_keyをaccessTokenに置き換える必要があります。
import java.io.*; import okhttp3.*; public class main { public static void main(String []args) throws IOException{ OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, "{\n \"publicKey\": \"{{public_key}}\",\n \"secretKey\": \"{{secret_key}}\"\n}"); Request request = new Request.Builder() .url("https://api-server.compdf.com/server/v1/oauth/token") .method("POST", body) .build(); Response response = client.newCall(request).execute(); } }
前の手順で取得したaccessTokenを置き換え、エラー情報を表示する言語タイプを置き換える必要があります。置き換えた後、応答データにtaskIdが取得されます。
import java.io.*; import okhttp3.*; public class main { public static void main(String []args) throws IOException{ OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api-server.compdf.com/server/v1/task/pdf/docx?language={{language}}") .method("GET", body) .addHeader("Authorization", "Bearer {{accessToken}}") .build(); Response response = client.newCall(request).execute(); } }
変換するファイル、前の手順で取得したtaskId 、エラー情報を表示する言語タイプ、および最初の手順で取得したaccessTokenを置き換えます。
import java.io.*; import okhttp3.*; public class main { public static void main(String []args) throws IOException{ OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM) .addFormDataPart("file","{{file}}", RequestBody.create(MediaType.parse("application/octet-stream"), new File(""))) .addFormDataPart("taskId","{{taskId}}") .addFormDataPart("language","{{language}}") .addFormDataPart("password","") .addFormDataPart("parameter","{ \"isFlowLayout\": \"1\", \"isContainImg\": \"1\"}") .build(); Request request = new Request.Builder() .url("https://api-server.compdf.com/server/v1/file/upload") .method("POST", body) .addHeader("Authorization", "Bearer {{accessToken}}") .build(); Response response = client.newCall(request).execute(); } }
Create タスクから取得したtaskIdと最初の手順で取得したaccessTokenを置き換え、エラー情報を表示する言語タイプを置き換えます。
import java.io.*; import okhttp3.*; public class main { public static void main(String []args) throws IOException{ OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api-server.compdf.com/server/v1/execute/start?taskId={{taskId}}&language={{language}}") .method("GET", body) .addHeader("Authorization", "Bearer {{accessToken}}") .build(); Response response = client.newCall(request).execute(); } }
taskId を「タスクの作成」の手順で取得した taskId に置き換え、 access_token を最初の手順で取得したaccess_tokenに置き換えます。
import java.io.*; import okhttp3.*; public class main { public static void main(String []args) throws IOException{ OkHttpClient client = new OkHttpClient().newBuilder() .build(); MediaType mediaType = MediaType.parse("text/plain"); RequestBody body = RequestBody.create(mediaType, ""); Request request = new Request.Builder() .url("https://api-server.compdf.com/server/v1/task/taskInfo?taskId={{taskId}}") .method("GET", body) .addHeader("Authorization", "Bearer {{accessToken}}") .build(); Response response = client.newCall(request).execute(); } }
この投稿では、Java による PDF から Word への API を使用して、アプリケーション用に PDF ファイルを Word ファイルに簡単かつシームレスに変換する方法を学習しました。
これらの PDF 機能はすべて、アプリケーションやシステムに統合できます。同じ API トークンを使用して、PDF の分割や結合、透かしの追加、OCR や AI テーブル認識の使用など、他の操作も実行できます。無料トライアルを開始するには、こちらからサインアップしてください。