Brightroom:基于Metal的全功能可定制UI图像编辑器





项目名称:Brightroom

Brightroom是一个基于SwiftUI和Metal的全功能图像编辑器,它允许用户创建自定义的图像编辑UI,并通过EditingStack组件来管理编辑历史和渲染图像。以下是该项目的主要特点和使用示例:

功能特点

  • 自定义图像编辑UI:用户可以通过组合不同的组件来创建自己的图像编辑器界面。

  • 编辑历史管理EditingStacks管理编辑历史,类似于无头浏览器。

  • P3宽色域支持:支持P3宽色域,提供更丰富的色彩编辑能力。

  • 超大图片支持:支持超大图片编辑,最大可达12000像素。

  • Metal渲染:预览和渲染都由Metal提供支持,提高性能。

  • 自定义遮罩创建:在照片上创建自定义绘制的遮罩。

  • LUT自定义滤镜:支持使用LUT的自定义滤镜。

  • 远程图片加载:支持通过URL加载和下载远程图片进行编辑。

  • UIKit和SwiftUI支持:同时支持UIKit和SwiftUI。

安装方法

通过Swift Package Manager安装:

dependencies: [
    .package(url: "https://github.com/muukii/Brightroom.git", upToNextMajor: "2.2.0")
]

内置UI组件

BrightroomUIPhotosCrop.PhotosCropRotation

import SwiftUI
import BrightroomUIPhotosCrop

struct DemoCropView: View {

  @StateObject var editingStack: EditingStack
  @State var resultImage: ResultImage?

  init(
    editingStack: @escaping () -> EditingStack
  ) {
    self._editingStack = .init(wrappedValue: editingStack())
  }

  var body: some View {
    ZStack {

      VStack {
        PhotosCropRotating(editingStack: { editingStack })

        Button("Done") {
          let image = try! editingStack.makeRenderer().render().cgImage
          self.resultImage = .init(cgImage: image)
        }
      }
    }
    .onAppear {
      editingStack.start()
    }
  }

}

演示与完整应用

Brightroom还有一个在App Store上的开源且可生产的应用程序Drip,展示了Brightroom的功能和一些简单的实验。克隆此仓库并构建项目即可尝试。

或许喜欢

ImageColorPicker:从图片中提取颜色

ImageColorPicker是一个开源的SwiftUI项目,能够从用户选择的图片中提取和分析颜色,支持多种颜色识别功能。

最近更新 2024-12-10

PhotoEditor:一款用Swift开发的开源图片编辑器

PhotoEditor是一个用Swift语言开发的开源图片编辑器,提供基本的图片编辑功能,适用于iOS平台。

最近更新 2024-12-11

Chorcast:集成SwiftUI和UIKit的播客应用

Chorcast是一个使用SwiftUI和UIKit开发的播客应用,支持Combine和CoreData,采用TCA架构,提供深色和浅色模式。

最近更新 2024-12-11

热榜

Made with in Shangrao,China By 老雷

Copyright © devler.cn 1987 - Present

赣ICP备19009883号-1