Swiftパッケージ · v0.1.2
KLAdaptivePalette
ホストコンテナで実際に表示される画像領域からパレットを生成します。
KLAdaptivePaletteは `CGImage`、コンテナサイズ、表示モード、クロップアンカーを使って、実際に表示される画像領域を解析します。ソースカラー、候補色、前景色、決定的なキャッシュキーを返します。
できること
- `.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表示領域のソースカラー、候補色、ティント、背景色、前景色を返します。
デモアプリ
PaletteInspector
`.aspectFill` と `.aspectFit` の表示領域を解析 · 重み付きの知覚的な色候補を返す
AdaptiveSurface
実際の背景の輝度から前景色を選ぶ · キャッシュは `KLPaletteAnalyzer` のインスタンス単位