При обработке документов в веб-приложении ценным преимуществом является возможность плавного преобразования PDF-файлов в документы Word. Эта задача не только распространена, но и важна для различных приложений, таких как конвертеры и редакторы документов, от редактирования и совместной работы до извлечения контента. В этой записи блога мы рассмотрим, как преобразовать PDF-файл в документ Word DOC/DOCX с помощью JavaScript.
- Конвертер PDF в Word из JavaScript
- Конвертируйте PDF в DOC в JavaScript
- Конвертируйте PDF в DOCX в JavaScript
Библиотека JavaScript для преобразования PDF в Word
Для преобразования документов PDF в Word в JavaScript мы будем использовать Aspose.PDF for JavaScript. Это комплексная библиотека, которая позволяет разработчикам программно создавать, манипулировать, редактировать и конвертировать PDF-файлы. Библиотека проста в использовании и легко интегрируется в приложения JavaScript, что делает ее идеальным выбором для задач, связанных с PDF.
Загрузите библиотеку и следуйте инструкциям по установке, представленным здесь: Установить Aspose.PDF for JavaScript.
Преобразование PDF в Word DOC с помощью JavaScript
С Aspose.PDF вам не придется проходить сложный процесс преобразования PDF в Word. Просто загрузите PDF-файл и сохраните его в формате Word. Однако мы переложим ресурсоемкую задачу преобразования PDF в DOC веб-работнику, чтобы предотвратить блокировку основного потока пользовательского интерфейса. Это обеспечивает удобный способ загрузки преобразованного документа Word в веб-приложение.
Ниже приведены шаги, которые необходимо выполнить для преобразования PDF в DOC в JavaScript.
- Создайте веб-работника, как показано в следующем фрагменте кода.
/*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;
}
- Напишите код для преобразования PDF в DOC, выполнив следующие шаги.
- Сначала выберите PDF-файл, который вы хотите конвертировать.
- Затем создайте новый объект FileReader.
- Вызовите функцию AsposePdfToDoc, которая преобразует PDF в формат Word. Эта функция также принимает имя преобразованного файла Word.
- Далее, если json.errorCode равен 0, результирующему файлу Word будет присвоено имя, указанное вами ранее. В противном случае в вашем файле будет ошибка, и сообщение об ошибке будет зарегистрировано в файле json.errorText.
- Наконец, функция DownloadFile генерирует ссылку для загрузки преобразованного файла Word.
Ниже приведен фрагмент кода для преобразования PDF в формат Word DOC с помощью JavaScript.
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]);
}
Конвертируйте PDF в DOCX в JavaScript
Если вам нужно преобразовать PDF в формат DOCX, вы можете сделать это, выполнив тот же процесс с небольшими изменениями, чтобы получить документ Word в формате DOCX. Итак, давайте преобразуем PDF в документ DOCX с помощью JavaScript.
- Создайте веб-работника, используя приведенный ниже фрагмент кода.
/*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;
}
- Теперь напишите код для преобразования 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]);
}
Получите бесплатную PDF-библиотеку JavaScript
Вы можете получить бесплатную временную лицензию и использовать эту библиотеку JavaScript PDF без каких-либо ограничений.
Заключение
В этом сообщении блога мы рассмотрели процесс преобразования PDF-файлов в документы Word с помощью JavaScript. Шаги и фрагменты кода, представленные в этой записи блога, упрощают преобразование PDF в DOC и PDF в DOCX в приложениях JavaScript. Благодаря простой интеграции и мощным возможностям Aspose.PDF упрощает задачи манипулирования документами, позволяя разработчикам расширять свои приложения за счет эффективного преобразования PDF в Word.
Продолжая исследовать возможности Aspose.PDF for JavaScript, вы откроете для себя множество функций, позволяющих улучшить ваши решения по управлению документами. Сообщите нам о своем опыте работы с Aspose.PDF или поделитесь своими вопросами на нашем форуме.