blockmatic/generator/scripts/resize.js
2024-12-22 16:01:09 +00:00

27 lines
591 B
JavaScript

const fs = require("fs");
const path = require("path");
const sharp = require("sharp");
const INPUT = path.join(__dirname, "../blocks/");
(async () => {
const files = fs.readdirSync(INPUT);
for (const file of files) {
const filePath = path.join(INPUT, file);
const image = sharp(filePath);
const metadata = await image.metadata();
if (metadata.height > 16) {
await image
.extract({ top: 0, left: 0, width: 16, height: 16 })
.resize(16, 16)
.toBuffer()
.then((buffer) => {
fs.writeFileSync(filePath, buffer);
});
}
}
console.log("Done!");
})();