import sharp from 'sharp'; import { readFileSync, writeFileSync, mkdirSync } from 'node:fs'; import { dirname } from 'node:path'; const [, , input, output, size = '1024'] = process.argv; if (!input || !output) { console.error('Usage: svg-to-png.mjs [size]'); process.exit(1); } mkdirSync(dirname(output), { recursive: true }); const svg = readFileSync(input); const png = await sharp(svg).resize(Number(size), Number(size)).png().toBuffer(); writeFileSync(output, png); console.log(`OK: ${output} (${size}x${size})`);