Swift软件包 · v0.1.2

KLAdaptivePalette

从宿主容器实际可见的图像区域生成调色板。

KLAdaptivePalette使用 `CGImage`、容器尺寸、内容模式和裁切锚点分析实际显示的图像区域。它返回来源色、候选色、前景色和确定性的缓存键。

支持平台
iOS 17+ · macOS 14+
开发工具
Swift 6.0+
许可证
MIT
第三方依赖

功能

  • 支持 `.aspectFill` 与 `.aspectFit` 可见区域分析
  • 返回按权重排序的颜色候选
  • 根据实际背景亮度选择前景色
  • 缓存范围限定在单个 `KLPaletteAnalyzer` 实例内

不包含的功能

软件包只分析 `CGImage` 像素。图片加载、任务调度、持久化和宿主视图组合由接入应用负责。

通过SwiftPM安装

Package.swiftSwift
.package(url: "https://github.com/KoenLee1023/KLAdaptivePalette.git", from: "0.1.2")

使用方法

接入示例Swift
let request = KLPaletteRequest(
    image: image,
    cacheID: mediaID,
    containerSize: size
)
let palette = KLPaletteAnalyzer().analyze(request)
KLPaletteAnalyzer

分析 `KLPaletteRequest`,并为相同像素和显示几何返回确定性的缓存键。

KLPaletteRequest

保存 `CGImage`、缓存ID、容器尺寸、内容模式和归一化裁切锚点。

KLAdaptivePalette

返回可见区域的来源色、候选色、强调色、背景色和前景色。

示例App

PaletteInspector

支持 `.aspectFill` 与 `.aspectFit` 可见区域分析 · 返回按权重排序的颜色候选

AdaptiveSurface

根据实际背景亮度选择前景色 · 缓存范围限定在单个 `KLPaletteAnalyzer` 实例内