fix: pdf support in vips

This commit is contained in:
C4illin 2024-08-23 14:30:02 +02:00
parent 1535377bfe
commit 8ca4f1587d
2 changed files with 22 additions and 13 deletions

View file

@ -1,4 +1,4 @@
FROM oven/bun:1.1.25-alpine as base FROM oven/bun:1.1.25-alpine AS base
WORKDIR /app WORKDIR /app
# install dependencies into temp directory # install dependencies into temp directory
@ -40,6 +40,8 @@ RUN apk --no-cache add \
graphicsmagick \ graphicsmagick \
ghostscript \ ghostscript \
vips-tools \ vips-tools \
vips-poppler \
vips-jxl \
libjxl-tools libjxl-tools
# this might be needed for some latex use cases, will add it if needed. # this might be needed for some latex use cases, will add it if needed.

View file

@ -113,22 +113,29 @@ export function convert(
// .toFormat(convertTo) // .toFormat(convertTo)
// .toFile(targetPath); // .toFile(targetPath);
// } // }
let action = "copy";
if (fileType === "pdf") {
action = "pdfload";
}
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
exec(`vips copy "${filePath}" "${targetPath}"`, (error, stdout, stderr) => { exec(
if (error) { `vips ${action} "${filePath}" "${targetPath}"`,
reject(`error: ${error}`); (error, stdout, stderr) => {
} if (error) {
reject(`error: ${error}`);
}
if (stdout) { if (stdout) {
console.log(`stdout: ${stdout}`); console.log(`stdout: ${stdout}`);
} }
if (stderr) { if (stderr) {
console.error(`stderr: ${stderr}`); console.error(`stderr: ${stderr}`);
} }
resolve("success"); resolve("success");
}); },
);
}); });
} }