Converter PDF em Word em JavaScript

Ao processar documentos em um aplicativo da web, a capacidade de converter facilmente arquivos PDF em documentos do Word é um recurso valioso. Esta tarefa não é apenas comum, mas também essencial para diversas aplicações, como conversores e editores de documentos, desde edição e colaboração até extração de conteúdo. Nesta postagem do blog, exploraremos como converter um arquivo PDF em um documento Word DOC/DOCX em JavaScript.

Biblioteca JavaScript para converter PDF em Word

Para conversão de documentos PDF para Word em JavaScript, usaremos Aspose.PDF for JavaScript. É uma biblioteca abrangente que permite aos desenvolvedores trabalhar com geração, manipulação, edição e conversão de PDF de forma programática. A biblioteca foi projetada para ser fácil de usar e se integra perfeitamente a aplicativos JavaScript, tornando-a a escolha ideal para tarefas relacionadas a PDF.

Baixe a biblioteca e siga as instruções de instalação fornecidas aqui: Instalar Aspose.PDF para JavaScript.

Converta um PDF em Word DOC em JavaScript

Com Aspose.PDF, você não precisa passar pelo complexo processo de conversão de PDF em Word. Basta carregar o arquivo PDF e salvá-lo no formato Word. No entanto, descarregaremos a tarefa de conversão de PDF em DOC com uso intensivo de recursos para um web trabalhador para evitar o bloqueio do thread de interface do usuário principal. Isso garante uma maneira fácil de baixar o documento Word convertido em um aplicativo da web.

A seguir estão as etapas que você precisa executar para converter PDF em DOC em JavaScript.

  1. Crie um web trabalhador, conforme demonstrado no trecho de código a seguir.
/*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. Escreva o código para converter PDF em DOC seguindo as etapas abaixo.
  • Primeiro, selecione um arquivo PDF que deseja converter.
  • Em seguida, crie um novo objeto FileReader.
  • Chame a função AsposePdfToDoc que converte PDF para o formato Word. Esta função também aceita o nome do arquivo Word convertido.
  • Em seguida, se json.errorCode for 0, o arquivo Word resultante receberá o nome que você especificou anteriormente. Caso contrário, haverá um erro no seu arquivo e a mensagem de erro será registrada no arquivo json.errorText.
  • Por fim, a função DownloadFile gera um link para baixar o arquivo Word convertido.

Abaixo está o trecho de código para converter um PDF para o formato Word DOC em 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]);
}

Converter PDF em DOCX em JavaScript

Caso precise converter seu PDF para o formato DOCX, você pode fazê-lo seguindo o mesmo processo com pequenas alterações para obter o documento Word como DOCX. Então, vamos converter um PDF em um documento DOCX em JavaScript.

  1. Crie o web trabalhador usando o trecho de código abaixo.
/*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]);
};
/// [Fragmento de código]

/*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. Agora, escreva o código para converter PDF em DOCX. Aqui, você usará o método AsposePdfToDocX em vez de 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]);
}

Obtenha gratuitamente a biblioteca JavaScript PDF

Você pode obter uma licença temporária gratuita e usar esta biblioteca JavaScript PDF sem quaisquer limitações.

Conclusão

Nesta postagem do blog, exploramos o processo de conversão de arquivos PDF em documentos do Word usando JavaScript. As etapas e trechos de código fornecidos nesta postagem do blog simplificam as conversões de PDF para DOC e PDF para DOCX em aplicativos JavaScript. Com sua integração direta e recursos poderosos, o Aspose.PDF simplifica as tarefas de manipulação de documentos, permitindo que os desenvolvedores aprimorem seus aplicativos com conversão eficiente de PDF para Word.

À medida que você continua explorando os recursos do Aspose.PDF para JavaScript, você descobrirá uma variedade de recursos para aprimorar suas soluções de gerenciamento de documentos. Conte-nos sobre sua experiência com Aspose.PDF ou compartilhe suas dúvidas através de nosso fórum.