gubler / color
Color conversion library
v2.0.0
2023-08-11 17:47 UTC
Requires
- php: ^8.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.22
- phpstan/extension-installer: ^1.3
- phpstan/phpstan: ^1.10
- phpstan/phpstan-deprecation-rules: ^1.1
- phpstan/phpstan-phpunit: ^1.3
- phpunit/phpunit: ^10.3
- symfony/var-dumper: ^6.3
- tomasvotruba/type-coverage: ^0.2
This package is auto-updated.
Last update: 2024-11-11 21:04:18 UTC
README
Color is a CSS color object library. It allows you to create a Color
object and get multiple CSS color styles from it.
Installation
Install the library with composer:
composer require gulber/color
Usage
Create a new Color
object with a valid CSS color value:
// with hex value $color = new Color('#F4E204'); // with short hex value $color = new Color('#ccc'); // with RGB $color = new Color('rgb(10, 20, 30)'); // with RGBA $color = new Color('rgba(10, 20, 30, 0.5)'); // with HSL $color = new Color('hsl(30.5, 100%, 50%)'); // with HSLA $color = new Color('hsla(30.5, 100%, 50%, 1.0)');
Once you have created a color, you can export it in another format:
$color = new Color('#F4E204'); $color->rgba(); $color->hsla(); $color->hex();
You can also update the color:
$color->setHex('#fff000'); $color->setRgba(120, 0, 75, 0.9); $color->setHsla(50.5, 70, 60, 1);
Contrast Color Text
You can call contrastTextColor
to get a new Color
object, either black or white, whichever has better contrast with
the parent Color
.
$textColor = $color->contractTextColor(); $textColor->rgba() // either rgba(0, 0, 0, 1) or rgba(255, 255, 255, 1)
Thanks
This library was heavily inspired by spatie/color.