mcpField
I
icon-generator

icon-generator

github.com/dkyazzentwatwa设计与 UI12463 次安装29 周前更新
代码仓库

关于 icon-generator

icon-generator 从单张源图生成适用于多个平台的应用图标,面向需要准备平台图标资源的开发者。它提供平台尺寸预设、批量输出和圆角选项。

主要功能

  1. 01支持 iOS、Android、Web、macOS、Windows
  2. 02从单张图片批量生成尺寸
  3. 03按平台预设尺寸
  4. 04支持 PNG、ICO、ICNS
  5. 05可选方形或圆角

适用场景

  1. 01生成 iOS 应用图标尺寸
  2. 02准备 Android 图标资源
  3. 03生成网站图标和 PWA 图标
  4. 04输出 Windows ICO 图标

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/dkyazzentwatwa/chatgpt-skills --skill icon-generator

安装后在 Claude Code 中输入/icon-generator确认已加载。

附带文件scripts/icon_generator.pyscripts/requirements.txt

详细介绍

图标生成器

从一张图片生成所有所需尺寸的应用图标。

功能

  • 多平台:iOS、Android、Web、macOS、Windows
  • 批量生成:从单个源图生成所有尺寸
  • 智能缩放:确保所有尺寸下的画质
  • 格式支持:PNG、ICO、ICNS
  • 预设:各平台专用尺寸集
  • 圆角选项:方角或圆角

快速开始

from icon_generator import IconGenerator

gen = IconGenerator()

# Generate all iOS icons
gen.load("logo.png")
gen.generate_ios("ios_icons/")

# Generate all favicon sizes
gen.load("logo.png")
gen.generate_favicon("favicon/")

# Generate specific sizes
gen.load("logo.png")
gen.generate_sizes([16, 32, 64, 128, 256, 512], "icons/")

CLI 用法

# Generate iOS icons
python icon_generator.py --input logo.png --preset ios --output-dir ios_icons/

# Generate Android icons
python icon_generator.py --input logo.png --preset android --output-dir android_icons/

# Generate favicons
python icon_generator.py --input logo.png --preset favicon --output-dir favicon/

# Custom sizes
python icon_generator.py --input logo.png --sizes 16 32 64 128 256 -o icons/

# Generate all platforms
python icon_generator.py --input logo.png --preset all --output-dir app_icons/

API 参考

IconGenerator 类
class IconGenerator:
    def __init__(self)

    # Loading
    def load(self, filepath: str) -> 'IconGenerator'

    # Generation
    def generate_ios(self, output_dir: str) -> List[str]
    def generate_android(self, output_dir: str) -> List[str]
    def generate_favicon(self, output_dir: str) -> List[str]
    def generate_macos(self, output_dir: str) -> List[str]
    def generate_windows(self, output_dir: str) -> List[str]
    def generate_pwa(self, output_dir: str) -> List[str]
    def generate_all(self, output_dir: str) -> Dict[str, List[str]]

    # Custom
    def generate_sizes(self, sizes: List[int], output_dir: str,
                      prefix: str = "icon") -> List[str]
    def generate_single(self, size: int, output: str) -> str

    # Options
    def set_rounding(self, radius_percent: float) -> 'IconGenerator'
    def set_padding(self, padding_percent: float) -> 'IconGenerator'
    def set_background(self, color: Tuple) -> 'IconGenerator'

平台尺寸

iOS(App Store)
  • 20x20、29x29、40x40、60x60、76x76、83.5x83.5
  • 1024x1024(App Store)
  • @2x 和 @3x 变体
Android
  • mdpi:48x48
  • hdpi:72x72
  • xhdpi:96x96
  • xxhdpi:144x144
  • xxxhdpi:192x192
  • Play Store:512x512
网站图标
  • 16x16、32x32、48x48
  • 180x180(Apple Touch)
  • 192x192、512x512(PWA)
Windows
  • 16x16、32x32、48x48
  • 256x256(ICO)

依赖项

  • pillow>=10.0.0

评论

支持 Markdown