Axel León
Axel León

Reputation: 476

How to generate pdf from docx - NodeJS + TypeScript

I'm trying to generate a PDF from a previously generated DOCX file in NodeJS. I'm using NestJS and TypeScript. I have tried many ways, but everything fails:

Do you know some workaround to the problems I got with any of the previously mentioned docx to pdf alternatives? Or maybe some other alternative that I can use (For free, please)?

Thank you in advance!

Upvotes: 5

Views: 8708

Answers (2)

jiroch
jiroch

Reputation: 424

The best I know about is using Libreoffice. You don't really need a wrapper library for that.

You can just execute libreoffice directly using exec:

const { exec } = require("child_process");

exec("libreoffice --headless file.xyz", (error, stdout, stderr) => {
    if (error) {
        console.log(`error: ${error.message}`);
        return;
    }
    if (stderr) {
        console.log(`stderr: ${stderr}`);
        return;
    }
    console.log(`stdout: ${stdout}`);
});

You'll need to first write your DOCX to a file somewhere on the disk where Libreoffice would be able to open it, and the resulting PDF would be written on the disk as well - then you can load it into Node with fs.

Upvotes: 2

William Lewis
William Lewis

Reputation: 589

I've had success using Puppeteer to render PDFs from HTML documents. If you could manage to transform your DOCX file into HTML, this might be a viable option. It looks like there are options available to do so, but I can't vouch for them.

Upvotes: 0

Related Questions