Swift패키지 · v0.1.2

KLAdaptivePalette

호스트 컨테이너에 실제로 보이는 이미지 영역에서 팔레트를 만듭니다.

KLAdaptivePalette는 `CGImage`, 컨테이너 크기, 콘텐츠 모드, 크롭 앵커를 사용해 실제 표시 영역을 분석합니다. 소스 색상, 후보 색상, 전경색, 결정적인 캐시 키를 반환합니다.

지원OS
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

표시 영역의 소스 색상, 후보 색상, 틴트, 배경색, 전경색을 반환합니다.

데모 앱

PaletteInspector

`.aspectFill`과 `.aspectFit` 표시 영역 분석 · 가중치가 있는 지각적 색상 후보 반환

AdaptiveSurface

실제 배경의 밝기에서 전경색 선택 · 캐시는 하나의 `KLPaletteAnalyzer` 인스턴스 범위로 제한