Converti PDF in Word in JavaScript

Durante l’elaborazione di documenti in un’applicazione Web, la possibilità di convertire facilmente file PDF in documenti Word è una risorsa preziosa. Questa attività non è solo comune ma anche essenziale per varie applicazioni, come convertitori ed editor di documenti, dall’editing e dalla collaborazione all’estrazione di contenuti. In questo post del blog esploreremo come convertire un file PDF in un documento Word DOC/DOCX in JavaScript.

Libreria JavaScript per convertire PDF in Word

Per la conversione di documenti da PDF a Word in JavaScript, utilizzeremo Aspose.PDF for JavaScript. Si tratta di una libreria completa che consente agli sviluppatori di lavorare con la generazione, la manipolazione, la modifica e la conversione di PDF a livello di codice. La libreria è progettata per essere facile da usare e si integra perfettamente nelle applicazioni JavaScript, rendendola la scelta ideale per le attività relative ai PDF.

Scarica la libreria e segui le istruzioni di installazione fornite qui: Installa Aspose.PDF for JavaScript.

Converti un PDF in Word DOC in JavaScript

Con Aspose.PDF, non è necessario sottoporsi al complesso processo di conversione da PDF a Word. Basta caricare il file PDF e salvarlo in formato Word. Tuttavia, scaricheremo l’attività di conversione da PDF a DOC ad alta intensità di risorse su un lavoratore Web per evitare di bloccare il thread principale dell’interfaccia utente. Ciò garantisce un modo semplice per scaricare il documento Word convertito in un’applicazione web.

Di seguito sono riportati i passaggi che è necessario eseguire per la conversione da PDF a DOC in JavaScript.

  1. Crea un lavoratore Web, come dimostrato nel seguente frammento di codice.
/*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. Scrivi il codice per convertire PDF in DOC seguendo i passaggi seguenti.
  • Innanzitutto, seleziona un file PDF che desideri convertire.
  • Quindi, crea un nuovo oggetto FileReader.
  • Chiama la funzione AsposePdfToDoc che converte il PDF in formato Word. Questa funzione accetta anche il nome del file Word convertito.
  • Successivamente, se json.errorCode è 0, al file Word risultante verrà assegnato il nome specificato in precedenza. In caso contrario, si verificherà un errore nel file e il messaggio di errore verrà registrato nel file json.errorText.
  • Infine, la funzione DownloadFile genera un collegamento per scaricare il file Word convertito.

Di seguito è riportato lo snippet di codice per convertire un PDF in formato Word DOC in 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]);
}

Converti PDF in DOCX in JavaScript

Nel caso in cui tu abbia bisogno di convertire il tuo PDF in formato DOCX, puoi farlo seguendo lo stesso processo con piccole modifiche per ottenere il documento Word come DOCX. Quindi convertiamo un PDF in un documento DOCX in JavaScript.

  1. Crea il lavoratore Web utilizzando lo snippet di codice riportato di seguito.
/*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]);
};
/// [Snippet di codice]

/*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. Ora scrivi il codice per convertire PDF in DOCX. Qui utilizzerai il metodo AsposePdfToDocX invece di 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]);
}

Ottieni la libreria PDF JavaScript gratuita

Puoi ottenere una licenza temporanea gratuita e utilizzare questa libreria PDF JavaScript senza alcuna limitazione.

Conclusione

In questo post del blog, abbiamo esplorato il processo di conversione di file PDF in documenti Word utilizzando JavaScript. I passaggi e gli snippet di codice forniti in questo post del blog semplificano le conversioni da PDF a DOC e da PDF a DOCX nelle applicazioni JavaScript. Con la sua integrazione diretta e potenti funzionalità, Aspose.PDF semplifica le attività di manipolazione dei documenti, consentendo agli sviluppatori di migliorare le proprie applicazioni con un’efficiente conversione da PDF a Word.

Mentre continui a esplorare le funzionalità di Aspose.PDF for JavaScript, scoprirai numerose funzionalità per migliorare le tue soluzioni di gestione dei documenti. Facci sapere la tua esperienza con Aspose.PDF o condividi le tue domande tramite il nostro forum.