NAME

PDF::API2::Color - A OO-Color Module for PDFs.

DESCRIPTION

A module for manipulation Colors within RGB, HSV and HSL color-spaces for usage within PDF-Documents especially with the PDF::API2::PDF::API modules.

SYNOPSIS


	use PDF::API2::Color;


	$cl = PDF::API2::Color->new($colorname);
	$cl = PDF::API2::Color->newRGB($r,$g,$b);
	$cl = PDF::API2::Color->newHSV($h,$s,$v);
	$cl = PDF::API2::Color->newHSL($h,$s,$l);


	$cl->setRGB($r,$g,$b);
	$cl->addBrightness($br);
	($h,$s,$l) = $cl->asHSL;

METHODS

        ::Color->new
                         ::Color->newRGB $r, $g, $b
                         ::Color->newHSV $h, $s, $v
                         ::Color->newHSL $h, $s, $l
                         ::Color->newGrey $grey
                         ( $r, $g, $b ) = $cl->asRGB
                

Returns $cl's rgb values. Range [0 .. 1].

        ( $h, $s, $v ) = $cl->asHSV
                

Returns $cl's hsv values. Ranges h [0 .. 360], s/v [0 .. 1].

        ( $h, $s, $l ) = $cl->asHSL
                

Returns $cl's hsl values. Ranges h [0 .. 360], s/l [0 .. 1].

        $grey = $cl->asGrey
                         $grey = $cl->asGrey2
                

Returns $cl's grey value. Range [0 .. 1]. Functions 2 returns the geometric mean of the corresponding RGB values.

        $luminance = $cl->asLum
                

Returns $cl's grey value. Range [0 .. 1]. Functions 2 returns the geometric mean of the corresponding RGB values.

        ( $c, $m, $y )= $cl->asCMY
                

Returns $cl's cmy values. Range [0 .. 1].

        ( $c, $m, $y, $k )= $cl->asCMYK
                         ( $c, $m, $y, $k )= $cl->asCMYK2
                         ( $c, $m, $y, $k )= $cl->asCMYK3
                

Returns $cl's cmyk values. Range [0 .. 1]. Function 2 returns a 25% lighter color-equivalent. Function 3 returns a 25% lighter color-equivalent.

        $hex = $cl->asHex
                

Returns $cl's rgb values as html's hex-digits.

        $cl->setRGB $r, $g, $b
                

Sets the $cl's rgb values. Valid range [0 .. 1].

        $cl->setHSV $h, $s, $v
                

Sets the $cl's hsv values. Valid ranges: h [0..360], s/v [0..1].

        $cl->setHSL $h, $s, $l
                

Sets the $cl's hsl values. Valid ranges: h [0..360], s/l [0..1].

        $cl->setGrey $grey
                

Sets the $cl's grey value. Valid range [0 .. 1].

        $cl->setHex $hex
                

Sets the $cl's rgb values using 6 hex-nibbles.

        $cl->addSaturation $saturation
                

Adds to the $cl's saturation in the HSV model. Valid range [-1 .. 1].

        $cl->setSaturation $saturation
                

Sets the $cl's saturation in the HSV model. Valid range [0 .. 1].

        $cl->rotHue $degrees
                

Rotates the $cl's hue in the HSV/L model. Valid range [-360 .. 360].

        $cl->setHue $hue
                

Sets the $cl's hue in the HSV/L model. Valid range [0 .. 360].

        $cl->addBrightness $brightness
                

Adds to the $cl's brightness in the HSV model. Valid range [-1 .. 1].

        $cl->setBrightness $brightness
                

Sets the $cl's brightness in the HSV model. Valid range [0 .. 1].

        $cl->addLightness $lightness
                

Adds to the $cl's lightness in the HSL model. Valid range [-1 .. 1].

        $cl->setLightness $lightness
                

Sets the $cl's lightness in the HSL model. Valid range [0 .. 1].

AUTHOR

Alfred Reibenschuh alfredreibenschuh@yahoo.com.

HISTORY

version 0.1_03 -- first public test release

BUGS

Some ... please report them.

TODO

more color spaces ?