Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 

README.md

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

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)

About

Aesthetic color-scheme generation written in Swift

Resources

License

Packages

No packages published
You can’t perform that action at this time.