Latest 0.2.26
Homepage https://github.com/valdirunars/Lorikeet
License MIT
Platforms ios 9.1, requires ARC
Authors

Carthage Compatible
CocoaPods Compatible
Platforms iOS
License MIT

Lorikeet

Lightweight framework for generating visually aesthetic color-schemes in Swift

Requirements

  • UIKit

Features

What can Lorikeet do for you

  • Calculate visual color difference (wikipedia)
    • Algorithms:
      • CIE76
      • CIE94
      • CIE2000
  • Generate color schemes

Installation

Carthage

In your Cartfile put:

github "valdirunars/Lorikeet"

CocoaPods

In you Podfile

pod 'Lorikeet'

Manual

Copy the ./Lorikeet folder 😁🗂

How to Use

Basic Usage

let red: UIColor = .red

let label = UILabel()
label.backgroundColor = red

// Assign a maximum contrasting color as foreground color
label.textColor = red.lkt.complimentaryColor

// Visual color difference
let distance: Float = red.distance(to: .blue, algorithm: .cie2000)

// Generate color scheme
red.lkt.generateColorScheme(numberOfColors: 40) { colors in
    print(colors)
}

Advanced

Lorikeet’s Algorithm enum has two cases for advanced usage:

.advancedCIE94(l: Float, c: Float, h: Float, k1: Float, k2: Float)
.advancedCIE2000(l: Float, c: Float, h: Float)

Example:

let l: Float = 0.8
let c: Float = 0.9
let h: Float = 1.0

red.lkt.generateColorScheme(numberOfColors: 40,
                            using: .advancedCIE2000(l: l, c: c, h: h)) { colors in
    print(colors)
}

let range = HSVRange(hueRange: (0, 1),
         saturationRange: (0.5, 0.5),
         brightnessRange: (0.95, 0.95))

color.lkt.generateColorScheme(numberOfColors: 15,
                              withRange: range,
                              using: .cie2000) {
    colors in
}

Screenshots

Making text readable using random colors:

let label = UILabel(frame: frame)
self.view.backgroundColor = UIColor(hue: 180/360.0,
                                    saturation: 0.5,
                                    brightness: 0.6,
                                    alpha: 1)

label.backgroundColor = self.view
    .backgroundColor!
    .lkt
    .generateRandomMatchingColor()

label.textColor = label.backgroundColor!
    .lkt
    .complimentaryColor

Lorikeet

Generating colors:

let color: UIColor = UIColor(red: 245/255.0, green: 110/255.0, blue: 100/255.0, alpha: 1)

color.lkt.generateColorScheme(numberOfColors: 10)

Lorikeet

Latest podspec

{
    "name": "Lorikeet",
    "version": "0.2.26",
    "summary": "Lightweight framework for generating visually aesthetic color-schemes in Swift",
    "description": "Lightweight framework for generating visually aesthetic color-schemes in Swift",
    "homepage": "https://github.com/valdirunars/Lorikeet",
    "license": "MIT",
    "authors": {
        "valdirunars": "[email protected]"
    },
    "source": {
        "git": "https://github.com/valdirunars/Lorikeet.git",
        "tag": "0.2.26"
    },
    "platforms": {
        "ios": "9.1"
    },
    "requires_arc": true,
    "source_files": "Lorikeet/*",
    "pushed_with_swift_version": "3.x"
}

Pin It on Pinterest

Share This