SwiftUI 应用图标创建器

Swift 5 platform macOS 11

使用 SwiftUI 在 Xcode 中创建 iOS 和 macOS 应用图标

需要 Xcode 12 和 macOS 11

Creating app icon in Xcode - screenshot

支持深色模式

Creating app icon in Xcode - screenshot

📝 如何使用

TL;DR (太长不看): 查看此仓库中的示例项目

1️⃣ 创建一个新的 Swift Package

在您的 Package.swift 中定义两个 product

添加 swiftui-app-icon-creator package 作为依赖项。

您的 Package.swift 应该像这样

// swift-tools-version:5.3
import PackageDescription

let package = Package(
  name: "my-app-icon",
  platforms: [.macOS(.v11)],
  products: [
    .library(name: "MyAppIcon", targets: ["MyAppIcon"]),
    .executable(name: "export", targets: ["Export"])
  ],
  dependencies: [
    .package(url: "https://github.com/darrarski/swiftui-app-icon-creator.git", from: "1.0.0")
  ],
  targets: [
    .target(name: "MyAppIcon", dependencies: [
      .product(name: "AppIconCreator", package: "swiftui-app-icon-creator")
    ]),
    .target(name: "Export", dependencies: ["MyAppIcon"])
  ]
)

2️⃣ 在 Library target 中使用 SwiftUI 创建一个图标视图

只需在 Library target 中创建一个新的 SwiftUI 视图

import SwiftUI

public struct MyAppIconView: View {
  public init() {}

  public var body: some View {
    // ...  
  }
}

3️⃣ 使用 IconPreviews 在 Xcode 中实时预览您的图标

将此代码添加到包含您的图标视图的文件中

import AppIconCreator

struct MyAppIconView_Preivews: PreviewProvider {
  static var previews: some View {
    IconPreviews(
      icon: MyAppIconView(),
      configs: .iOS
    )
  }
}

确保您已选择与您的 Library target 关联的构建方案(在本例中为 MyAppIcon)。

您应该能够在 Xcode 预览中实时预览该图标。

您可以调整 configs 参数来指定您想要预览的图标类型。查看 IconConfig.swift 获取可能的选项。

4️⃣ 将导出代码添加到 Executable target

将此代码添加到您的 Executable target 中的 main.swift 文件

import AppIconCreator
import MyAppIcon
import Foundation

let icon = MyAppIconView()
let configs = [IconConfig].iOS
let images = [IconImage].images(for: icon, with: configs)
let exportURL = FileManager.default.homeDirectoryForCurrentUser.appendingPathComponent("Desktop").appendingPathComponent("MyAppIcon")
images.forEach { $0.save(to: exportURL) }

您可以调整 configs 变量来指定您想要导出的图标类型。查看 IconConfig.swift 获取可能的选项。

在上面的示例中,图像将被导出到当前用户的桌面上的 MyAppIcon 目录。您可以根据需要随意调整 exportURL 变量。

5️⃣ 从 Xcode 运行 Executable 来导出您的图标图像

确保您已选择与您的 Executable target 关联的构建方案(在本例中为 export)。

您的图标的图像应该被导出到 exportURL 变量中指定的目录中。

☕️ 您喜欢这个项目吗?

Buy Me A Coffee

📄 许可

版权所有 © 2020 Dariusz Rybicki Darrarski

许可:MIT