【发布时间】:2021-06-13 15:28:04
【问题描述】:
我有一个包含多个页面的 .tiff 文件,并且想将文件拆分为多个 .png 或 .jpg 文件(一页变成一个 png/jpg 图像)。由于我的代码库的性质,我不希望使用 ImageMagick 或 GraphicsMagick(我无法安装 CLI 工具)。
我想知道是否有办法这样做?我知道 sharp 可以从 .tiff 文件中检索元数据,该文件向我显示文件中的页数。是否会遵循以下工作:
const tiffImage = sharp(tiffFileName).raw().toBuffer();
const metadata = await tiffImage.metadata().then(function(metadata) {
pages: metadata.pages,
pageHeight: metadata.pageHeight
});
for (let i = 0; i < metadata.pages; i++) {
// split tiff file using the pageHeight? lets call this bufferOfOnePage
sharp(bufferOfOnePage).png().toFile(PNG_OUTPUT_NAME);
}
【问题讨论】:
标签: javascript node.js image tiff sharp