innmind/colour

Handle colours strictly

4.2.0 2023-09-16 15:24 UTC

This package is auto-updated.

Last update: 2024-12-16 18:12:58 UTC


README

Build Status codecov Type Coverage

This library helps you build an object representation of a colour out of a string (all objects are immutable). You can easily extract any information out of the colors, transform their representation and modify the colours.

It supports these formats:

  • #39f
  • #39ff (last hexadecimal value for the alpha)
  • #3399ff
  • #3399ffff (last 2 hexadecimal values for the alpha)
  • rgb()
  • rgba()
  • hsl()
  • hsla()
  • device-cmyk()
  • literals (as defined by the W3C)

Installation

composer install innmind/colour

Usage

use Innmind\Colour\Colour;

$rgba = Colour::of('39f');
$hsla = Colour::of('hsl(210, 100%, 60%)');
$cmyka = Colour::of('device-cmyk(80%, 40%, 0%, 0%)');
$rgba = Colour::blue->toRGBA();

Each representation can be represented to the other two so you can always work with your preferred format.