Provided by: libcolor-library-perl_0.021-2_all
NAME
Color::Library::Color - Color entry for a Color::Library color dictionary
METHODS
$id = $color->id Returns the id of the color A color id is in the format of <dictionary_id:color_name>, e.g. svg:aliceblue x11:bisque2 nbs-iscc-f:chromeyellow.66 vaccc:darkspringyellow $name = $color->name Returns the name of the color, e.g. aliceblue bisque2 chromeyellow darkspringyellow $title = $color->title Returns the title of the color, e.g. aliceblue bisque2 chrome yellow Dark Spring-Yellow $dictionary = $color->dictionary Returns the Color::Library::Dictionary object that the color belongs to $hex = $color->hex Returns the hex value of the color, e.g. ff08ff eed5b7 eaa221 669900 Note that $hex does NOT include the leading #, for that use $color->html, $color->css, or $color->svg $html = $color->html $css = $color->css $svg = $color->svg Returns the hex value of the color with a leading #, suitable for use in HTML, CSS, or SVG documents, e.g. #ff08ff #eed5b7 #eaa221 #669900 $value = $color->value Returns the numeric value of the color, e.g. 15792383 15652279 15376929 6723840 ($r, $g, $b) = $color->rgb Returns r, g, and b values of the color as a 3 element list (list context), e.g. (240, 248, 255) $rgb = $color->rgb Returns r, g, and b values of the color in a 3 element array (scalar context), e.g. [ 240, 248, 255 ] $color = Color::Library::Color->new( id => $id, name => $name, title => $title, value => $value ) $color = Color::Library::Color->new( { id => $id, name => $name, title => $title, value => $value } ) $color = Color::Library::Color->new( [[ $id, $name, $title, $rgb, $hex, $value ]] ) Returns a new Color::Library::Color object representing the specified color You probably don't want/need to call this yourself FUNCTIONS $hex = Color::Library::Color::rgb2hex( $rgb ) $hex = Color::Library::Color::rgb2hex( $r, $g, $b ) Converts an rgb value to its hex representation $value = Color::Library::Color::rgb2value( $rgb ) $value = Color::Library::Color::rgb2value( $r, $g, $b ) Converts an rgb value to its numeric representation $rgb = Color::Library::Color::value2rgb( $value ) ($r, $g, $b) = Color::Library::Color::value2rgb( $value ) Converts a numeric color value to its rgb representation ($r, $g, $b) = Color::Library::Color::parse_rgb_color( $hex ) ($r, $g, $b) = Color::Library::Color::parse_rgb_color( $value ) Makes a best effort to convert a hex or numeric color value to its rgb representation # Partly taken from Imager/Color.pm sub parse_rgb_color { return (@_) if @_ == 3 && ! grep /[^\d.+eE-]/, @_; if ($_[0] =~ /^\#?([\da-f][\da-f])([\da-f][\da-f])([\da-f][\da-f])$/i) { return (hex($1), hex($2), hex($3)); } if ($_[0] =~ /^\#?([\da-f])([\da-f])([\da-f])$/i) { return (hex($1) * 17, hex($2) * 17, hex($3) * 17); } return value2rgb $_[0] if 1 == @_ && $_[0] =~ m/^\d+$/; } 1; __END__ sub parse_rgbs_color { return (@_) if @_ == 3 && ! grep /[^\d.+eE-]/, @_; if ($_[0] =~ /^\#?([\da-f][\da-f])([\da-f][\da-f])([\da-f][\da-f])([\da-f][\da-f])/i) { return (hex($1), hex($2), hex($3), hex($4)); } if ($_[0] =~ /^\#?([\da-f][\da-f])([\da-f][\da-f])([\da-f][\da-f])/i) { return (hex($1), hex($2), hex($3), 255); } if ($_[0] =~ /^\#([\da-f])([\da-f])([\da-f])$/i) { return (hex($1) * 17, hex($2) * 17, hex($3) * 17, 255); } return value2rgb $_[0] if 1 == @_; }