const sharp = require('sharp');
const fs = require('fs');
const path = require('path');
const sizes = [192, 256, 384, 512];
const generateIcon = async (size) => {
const svg = `
`;
const outputPath = path.join(__dirname, '..', 'public', `icon-${size}x${size}.png`);
await sharp(Buffer.from(svg))
.png()
.toFile(outputPath);
console.log(`生成图标: ${outputPath}`);
};
function generatePixelPattern(size) {
const pixelSize = size / 8;
const colors = ['#8B5CF6', '#3B82F6', '#10B981', '#F59E0B', '#EF4444'];
let pattern = '';
for (let y = 0; y < 6; y++) {
for (let x = 0; x < 6; x++) {
if (Math.random() > 0.3) {
const color = colors[Math.floor(Math.random() * colors.length)];
pattern += ``;
}
}
}
return pattern;
}
async function generateAllIcons() {
for (const size of sizes) {
await generateIcon(size);
}
}
generateAllIcons().catch(console.error);