JavaScript で PDF を Word に変換する

Web アプリケーションでドキュメントを処理する際、PDF ファイルを Word ドキュメントにシームレスに変換できる機能は貴重な資産です。このタスクは一般的なだけでなく、編集や共同作業からコンテンツ抽出に至るまで、ドキュメント コンバータやエディタなどのさまざまなアプリケーションにとって不可欠でもあります。このブログ投稿では、JavaScript で PDF ファイルを Word DOC/DOCX ドキュメントに変換する方法を説明します。

PDF を Word に変換する JavaScript ライブラリ

JavaScript で PDF から Word 文書に変換するには、Aspose.PDF for JavaScript を使用します。これは、開発者がプログラムで PDF の生成、操作、編集、変換を行うことを可能にする包括的なライブラリです。このライブラリは使いやすいように設計されており、JavaScript アプリケーションにシームレスに統合できるため、PDF 関連のタスクに最適です。

ライブラリを ダウンロードし、ここに記載されているインストール手順に従います: Aspose.PDF for JavaScript をインストール

JavaScript で PDF を Word DOC に変換する

Aspose.PDF を使用すると、複雑な PDF から Word への変換プロセスを実行する必要はありません。 PDF ファイルをロードし、Word 形式で保存するだけです。ただし、メイン UI スレッドのブロックを防ぐために、リソースを大量に消費する PDF から DOC への変換タスクを Web ワーカーにオフロードします。これにより、変換された Word 文書を Web アプリケーションにダウンロードするユーザーフレンドリーな方法が保証されます。

JavaScript で PDF から DOC に変換するには、次の手順を実行する必要があります。

  1. 次のコード スニペットに示すように、Web ワーカーを作成します。
/*Create Web Worker*/
const AsposePDFWebWorker = new Worker("AsposePDFforJS.js");
AsposePDFWebWorker.onerror = evt => console.log(`Error from Web Worker: ${evt.message}`);
AsposePDFWebWorker.onmessage = evt => document.getElementById('output').textContent = 
  (evt.data == 'ready') ? 'loaded!' :
    (evt.data.json.errorCode == 0) ? `Result:\n${DownloadFile(evt.data.json.fileNameResult, "application/msword", evt.data.params[0])}` : `Error: ${evt.data.json.errorText}`;

/*Event handler*/
const ffileToDoc = e => {
  const file_reader = new FileReader();
  file_reader.onload = event => {
    /*Convert a PDF-file to Doc and save the "ResultPDFtoDoc.doc" - Ask Web Worker*/
    AsposePDFWebWorker.postMessage({ "operation": 'AsposePdfToDoc', "params": [event.target.result, e.target.files[0].name, "ResultPDFtoDoc.doc"] }, [event.target.result]);
  };
  file_reader.readAsArrayBuffer(e.target.files[0]);
};

/*Make a link to download the result file*/
const DownloadFile = (filename, mime, content) => {
    mime = mime || "application/octet-stream";
    var link = document.createElement("a"); 
    link.href = URL.createObjectURL(new Blob([content], {type: mime}));
    link.download = filename;
    link.innerHTML = "Click here to download the file " + filename;
    document.body.appendChild(link); 
    document.body.appendChild(document.createElement("br"));
    return filename;
  }
  1. 以下の手順に従って、PDF を DOC に変換するコードを作成します。
  • まず、変換したいPDFファイルを選択します。
  • 次に、新しい FileReader オブジェクトを作成します。
  • PDF を Word 形式に変換する AsposePdfToDoc 関数を呼び出します。この関数は、変換された Word ファイルの名前も受け入れます。
  • 次に、json.errorCode が 0 の場合、結果として得られる Word ファイルには、前に指定した名前が付けられます。そうしないと、ファイルにエラーが発生し、エラー メッセージが json.errorText ファイルに記録されます。
  • 最後に、DownloadFile 関数は、変換された Word ファイルをダウンロードするためのリンクを生成します。

以下は、JavaScript で PDF を Word DOC 形式に変換するコード スニペットです。

var ffileToDoc = function (e) {
  const file_reader = new FileReader();
  file_reader.onload = (event) => {
    /*Convert a PDF-file to Doc and save the "ResultPDFtoDoc.doc"*/
    const json = AsposePdfToDoc(event.target.result, e.target.files[0].name, "ResultPDFtoDoc.doc");
    if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
    else document.getElementById('output').textContent = json.errorText;
    /*Make a link to download the result file*/
    DownloadFile(json.fileNameResult, "application/msword");
  }
  file_reader.readAsArrayBuffer(e.target.files[0]);
}

JavaScript で PDF を DOCX に変換する

PDF を DOCX 形式に変換する必要がある場合は、同じプロセスに従って少し変更を加えて Word 文書を DOCX として変換できます。それでは、JavaScript で PDF を DOCX ドキュメントに変換してみましょう。

  1. 以下のコード スニペットを使用して Web ワーカーを作成します。
/*Create Web Worker*/
const AsposePDFWebWorker = new Worker("AsposePDFforJS.js");
AsposePDFWebWorker.onerror = evt => console.log(`Error from Web Worker: ${evt.message}`);
AsposePDFWebWorker.onmessage = evt => document.getElementById('output').textContent = 
  (evt.data == 'ready') ? 'loaded!' :
    (evt.data.json.errorCode == 0) ? `Result:\n${DownloadFile(evt.data.json.fileNameResult, "application/vnd.openxmlformats-officedocument.wordprocessingml.document", evt.data.params[0])}` : `Error: ${evt.data.json.errorText}`;

/*Event handler*/
const ffileToDocX = e => {
  const file_reader = new FileReader();
  file_reader.onload = event => {
    /*convert a PDF-file to DocX and save the "ResultPDFtoDocX.docx" - Ask Web Worker*/
    AsposePDFWebWorker.postMessage({ "operation": 'AsposePdfToDocX', "params": [event.target.result, e.target.files[0].name, "ResultPDFtoDocX.docx"] }, [event.target.result]);
  };
  file_reader.readAsArrayBuffer(e.target.files[0]);
};
/// [コードスニペット]

/*make a link to download the result file*/
const DownloadFile = (filename, mime, content) => {
    mime = mime || "application/octet-stream";
    var link = document.createElement("a"); 
    link.href = URL.createObjectURL(new Blob([content], {type: mime}));
    link.download = filename;
    link.innerHTML = "Click here to download the file " + filename;
    document.body.appendChild(link); 
    document.body.appendChild(document.createElement("br"));
    return filename;
  }
  1. 次に、PDF を DOCX に変換するコードを作成します。ここでは、AsposePdfToDoc の代わりに AsposePdfToDocX メソッドを使用します。
var ffileToDocX = function (e) {
  const file_reader = new FileReader();
  file_reader.onload = (event) => {
    /*convert a PDF-file to DocX and save the "ResultPDFtoDocX.docx"*/
    const json = AsposePdfToDocX(event.target.result, e.target.files[0].name, "ResultPDFtoDocX.docx");
    if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
    else document.getElementById('output').textContent = json.errorText;
    /*make a link to download the result file*/
    DownloadFile(json.fileNameResult, "application/vnd.openxmlformats-officedocument.wordprocessingml.document");
  }
  file_reader.readAsArrayBuffer(e.target.files[0]);
}

無料の JavaScript PDF ライブラリを入手

無料の一時ライセンスを取得 して、この JavaScript PDF ライブラリを制限なく使用できます。

結論

このブログ投稿では、JavaScript を使用して PDF ファイルを Word ドキュメントに変換するプロセスについて説明しました。このブログ投稿で提供されている手順とコード スニペットは、JavaScript アプリケーションでの PDF から DOC および PDF から DOCX への変換を合理化します。 Aspose.PDF は、その簡単な統合と強力な機能により、ドキュメント操作タスクを簡素化し、開発者が効率的な PDF から Word への変換によってアプリケーションを強化できるようにします。

Aspose.PDF for JavaScript の機能の探索を続けると、ドキュメント管理ソリューションを強化するための豊富な機能が見つかるでしょう。 Aspose.PDF の使用経験についてお知らせいただくか、フォーラム を通じて質問を共有してください。