App Icon Generator logo

Build Language Supported platforms Swift Package Manager Release version License

App 图标生成器

一个用于从 SwiftUI 视图创建 App 图标的库。

目录
  1. 安装
  2. 亮点
  3. 图标集
  4. 演示
  5. 许可证

安装

要求

Swift 包管理器

App 图标生成器以 Swift 包的形式提供。

.package(url: "https://github.com/pawello2222/AppIconGenerator.git", .upToNextMajor(from: "1.0.0"))

亮点

使用 AppIconGenerator 生成图标

AppIconGenerator {
    IconView()
}
.generateIcons(for: .iOS)

或直接从 SwiftUI 代码块中生成

IconView()
    .generateIcons(for: .iOS)

输出

生成的图标将保存在文档目录中(完整路径将记录到控制台)

图标已保存至: /Users/.../Library/Developer/CoreSimulator/.../Documents/AppIconGenerator/Icon/Icon-1024.png

图标已保存至: /Users/.../Documents/AppIconGenerator/Icon/Icon-1024.png

图标集

extension IconSet {
    public var sizes: [CGFloat] {
        switch self {
        case .iOS:
            return [40, 58, 60, 76, 80, 87, 114, 120, 128, 136, 152, 167, 180, 192, 1024]
        case .macOS:
            return [16, 32, 64, 128, 256, 512, 1024]
        case .watchOS:
            return [44, 48, 55, 58, 60, 64, 66, 80, 87, 88, 92, 100, 102, 108, 172, 196, 216, 234, 258, 1024]
        case .single:
            return [1024]
        case .custom(let sizes):
            return sizes
        }
    }
}

演示

import AppIconGenerator
import SwiftUI

struct ContentView: View {
    var body: some View {
        IconView()
            .generateIcons(for: .iOS, name: "MyIcon")
    }
}

struct IconView: View {
    var body: some View {
        GeometryReader { geometry in
            ZStack {
                Color.blue
                Circle()
                    .fill(Color.red)
                    .frame(
                        width: geometry.size.width / 2,
                        height: geometry.size.height / 2
                    )
            }
        }
    }
}

许可证

App 图标生成器基于 MIT 许可证发布。 有关更多信息,请参阅 LICENSE 文件。