Конвертуйте PDF у Word за допомогою JavaScript

Під час обробки документів у веб-програмі можливість плавно конвертувати файли PDF у документи Word є цінним надбанням. Це завдання не тільки звичайне, але й важливе для різних програм, таких як конвертери та редактори документів, від редагування та співпраці до вилучення вмісту. У цій публікації блогу ми розглянемо, як перетворити PDF-файл на документ Word DOC/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.

  1. Створіть веб-воркер, як показано в наведеному нижче фрагменті коду.
/*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.

Нижче наведено фрагмент коду для перетворення 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.

  1. Створіть веб-воркер, використовуючи наведений нижче фрагмент коду.
/*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. Тут ви використовуватимете метод 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

Ви можете отримати безкоштовну тимчасову ліцензію і використовувати цю бібліотеку PDF JavaScript без будь-яких обмежень.

Висновок

У цій публікації блогу ми досліджували процес перетворення PDF-файлів у документи Word за допомогою JavaScript. Кроки та фрагменти коду, наведені в цій публікації блогу, спрощують перетворення PDF у DOC і PDF у DOCX у програмах JavaScript. Завдяки простій інтеграції та потужним можливостям Aspose.PDF спрощує завдання роботи з документами, дозволяючи розробникам вдосконалювати свої програми за допомогою ефективного перетворення PDF-файлів у Word.

Продовжуючи досліджувати можливості Aspose.PDF for JavaScript, ви відкриєте для себе безліч функцій для покращення ваших рішень для керування документами. Повідомте нам про свій досвід роботи з Aspose.PDF або поділіться своїми запитами через наш форум.