compare-pdf-plus
Version:
Standalone node module that compares PDFs
37 lines (35 loc) • 1.49 kB
JavaScript
import gm from 'gm';
import path from 'path';
// src/engines/graphicsMagick.ts
var imageMagick = gm.subClass({ imageMagick: "7+" });
var pdfToPng = (pdfDetails, pngFilePath, config) => {
return new Promise((resolve, reject) => {
const pdfBuffer = pdfDetails.buffer;
const pdfFilename = path.parse(pdfDetails.filename).name;
imageMagick(pdfBuffer, pdfFilename).command("convert").density(config.settings.density, config.settings.density).quality(config.settings.quality).write(pngFilePath, (err) => {
err ? reject(err) : resolve();
});
});
};
var applyMask = (pngFilePath, coordinates = { x0: 0, y0: 0, x1: 0, y1: 0 }, color = "black") => {
return new Promise((resolve, reject) => {
imageMagick(pngFilePath).command("convert").drawRectangle(
coordinates.x0,
coordinates.y0,
coordinates.x1,
coordinates.y1
).fill(color).write(pngFilePath, (err) => {
err ? reject(err) : resolve();
});
});
};
var applyCrop = (pngFilePath, coordinates = { width: 0, height: 0, x: 0, y: 0 }, index = 0) => {
return new Promise((resolve, reject) => {
imageMagick(pngFilePath).command("convert").crop(coordinates.width, coordinates.height, coordinates.x, coordinates.y).write(pngFilePath.replace(".png", `-${index}.png`), (err) => {
err ? reject(err) : resolve();
});
});
};
export { applyCrop, applyMask, pdfToPng };
//# sourceMappingURL=graphicsMagick-KNDP2FGH.js.map
//# sourceMappingURL=graphicsMagick-KNDP2FGH.js.map