在 Web 应用程序中处理文档时,将 PDF 文件无缝转换为 Word 文档的能力是一项宝贵的资产。此任务不仅常见,而且对于文档转换器和编辑器、从编辑和协作到内容提取的各种应用程序来说也是必不可少的。在这篇博文中,我们将探讨如何使用 JavaScript 将 PDF 文件转换为 Word DOC/DOCX 文档。

Aspose.PDF是一款高级PDF处理API,可以在跨平台应用程序中轻松生成,修改,转换,呈现,保护和打印文档。无需使用Adobe Acrobat。此外,API提供压缩选项,表创建和处理,图形和图像功能,广泛的超链接功能,图章和水印任务,扩展的安全控件和自定义字体处理。本文将为你介绍如何在 C++ 中将PDF转换为Doc 、Docx 。

Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

Aspose.pdf 最新下载(qun:666790229)https://www.evget.com/product/4118/download

将 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 格式即可。但是,我们会将资源密集型 PDF 到 DOC 转换任务卸载给 Web Worker,以防止阻塞主 UI 线程。这确保了在 Web 应用程序中以用户友好的方式下载转换后的 Word 文档。

以下是在 JavaScript 中将 PDF 转换为 DOC 所需执行的步骤。

  1. 创建一个 Web Worker,如以下代码片段所示。
/*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对象。
  • 调用AsposePdfToDoc函数将PDF转换为Word格式。此函数还接受转换后的 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 格式,您可以按照相同的过程进行少量更改,以获得 DOCX 格式的 Word 文档。让我们用 JavaScript 将 PDF 转换为 DOCX 文档。

使用下面的代码片段创建 Web Worker。

/*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]);};/// [Code snippet]/*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 的代码。在这里,您将使用方法AsposePdfToDocX而不是AsposePdfToDoc
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 文件转换为 Word 文档的过程。本博文中提供的步骤和代码片段简化了 JavaScript 应用程序中 PDF 到 DOC 和 PDF 到 DOCX 的转换。凭借其简单的集成和强大的功能,Aspose.PDF 简化了文档操作任务,使开发人员能够通过高效的 PDF 到 Word 转换来增强其应用程序。