File Coverage

blib/lib/Graphics/ColorNames/WWW.pm
Criterion Covered Total %
statement 11 11 100.0
branch n/a
condition n/a
subroutine 5 5 100.0
pod 0 1 0.0
total 16 17 94.1


line stmt bran cond sub pod time code
1             package Graphics::ColorNames::WWW;
2              
3             require 5.006;
4              
5 6     6   3243 use strict;
  6         15  
  6         184  
6 6     6   32 use warnings;
  6         16  
  6         541  
7              
8             our $VERSION = '1.14';
9              
10             sub NamesRgbTable() {
11 1168     1168   3094 sub _mk_rgb { ($_[0] << 16) + ($_[1] << 8) + ($_[2]) }
12 6     6   3098 use integer;
  6         91  
  6         30  
13             return {
14 8     8 0 419 'aliceblue' => _mk_rgb(240, 248, 255),
15             'antiquewhite' => _mk_rgb(250, 235, 215),
16             'aqua' => _mk_rgb( 0, 255, 255),
17             'aquamarine' => _mk_rgb(127, 255, 212),
18             'azure' => _mk_rgb(240, 255, 255),
19             'beige' => _mk_rgb(245, 245, 220),
20             'bisque' => _mk_rgb(255, 228, 196),
21             'black' => _mk_rgb( 0, 0, 0),
22             'blanchedalmond' => _mk_rgb(255, 235, 205),
23             'blue' => _mk_rgb( 0, 0, 255),
24             'blueviolet' => _mk_rgb(138, 43, 226),
25             'brown' => _mk_rgb(165, 42, 42),
26             'burlywood' => _mk_rgb(222, 184, 135),
27             'cadetblue' => _mk_rgb( 95, 158, 160),
28             'chartreuse' => _mk_rgb(127, 255, 0),
29             'chocolate' => _mk_rgb(210, 105, 30),
30             'coral' => _mk_rgb(255, 127, 80),
31             'cornflowerblue' => _mk_rgb(100, 149, 237),
32             'cornsilk' => _mk_rgb(255, 248, 220),
33             'crimson' => _mk_rgb(220, 20, 60),
34             'cyan' => _mk_rgb( 0, 255, 255),
35             'darkblue' => _mk_rgb( 0, 0, 139),
36             'darkcyan' => _mk_rgb( 0, 139, 139),
37             'darkgoldenrod' => _mk_rgb(184, 134, 11),
38             'darkgray' => _mk_rgb(169, 169, 169),
39             'darkgreen' => _mk_rgb( 0, 100, 0),
40             'darkgrey' => _mk_rgb(169, 169, 169),
41             'darkkhaki' => _mk_rgb(189, 183, 107),
42             'darkmagenta' => _mk_rgb(139, 0, 139),
43             'darkolivegreen' => _mk_rgb( 85, 107, 47),
44             'darkorange' => _mk_rgb(255, 140, 0),
45             'darkorchid' => _mk_rgb(153, 50, 204),
46             'darkred' => _mk_rgb(139, 0, 0),
47             'darksalmon' => _mk_rgb(233, 150, 122),
48             'darkseagreen' => _mk_rgb(143, 188, 143),
49             'darkslateblue' => _mk_rgb( 72, 61, 139),
50             'darkslategray' => _mk_rgb( 47, 79, 79),
51             'darkslategrey' => _mk_rgb( 47, 79, 79),
52             'darkturquoise' => _mk_rgb( 0, 206, 209),
53             'darkviolet' => _mk_rgb(148, 0, 211),
54             'deeppink' => _mk_rgb(255, 20, 147),
55             'deepskyblue' => _mk_rgb( 0, 191, 255),
56             'dimgray' => _mk_rgb(105, 105, 105),
57             'dimgrey' => _mk_rgb(105, 105, 105),
58             'dodgerblue' => _mk_rgb( 30, 144, 255),
59             'firebrick' => _mk_rgb(178, 34, 34),
60             'floralwhite' => _mk_rgb(255, 250, 240),
61             'forestgreen' => _mk_rgb( 34, 139, 34),
62             'fuchsia' => 0xff00ff, # "fuscia" is incorrect but common
63             'fuscia' => 0xff00ff, # mis-spelling...
64             'gainsboro' => _mk_rgb(220, 220, 220),
65             'ghostwhite' => _mk_rgb(248, 248, 255),
66             'gold' => _mk_rgb(255, 215, 0),
67             'goldenrod' => _mk_rgb(218, 165, 32),
68             'gray' => _mk_rgb(128, 128, 128),
69             'grey' => _mk_rgb(128, 128, 128),
70             'green' => _mk_rgb( 0, 128, 0),
71             'greenyellow' => _mk_rgb(173, 255, 47),
72             'honeydew' => _mk_rgb(240, 255, 240),
73             'hotpink' => _mk_rgb(255, 105, 180),
74             'indianred' => _mk_rgb(205, 92, 92),
75             'indigo' => _mk_rgb( 75, 0, 130),
76             'ivory' => _mk_rgb(255, 255, 240),
77             'khaki' => _mk_rgb(240, 230, 140),
78             'lavender' => _mk_rgb(230, 230, 250),
79             'lavenderblush' => _mk_rgb(255, 240, 245),
80             'lawngreen' => _mk_rgb(124, 252, 0),
81             'lemonchiffon' => _mk_rgb(255, 250, 205),
82             'lightblue' => _mk_rgb(173, 216, 230),
83             'lightcoral' => _mk_rgb(240, 128, 128),
84             'lightcyan' => _mk_rgb(224, 255, 255),
85             'lightgoldenrodyellow' => _mk_rgb(250, 250, 210),
86             'lightgray' => _mk_rgb(211, 211, 211),
87             'lightgreen' => _mk_rgb(144, 238, 144),
88             'lightgrey' => _mk_rgb(211, 211, 211),
89             'lightpink' => _mk_rgb(255, 182, 193),
90             'lightsalmon' => _mk_rgb(255, 160, 122),
91             'lightseagreen' => _mk_rgb( 32, 178, 170),
92             'lightskyblue' => _mk_rgb(135, 206, 250),
93             'lightslategray' => _mk_rgb(119, 136, 153),
94             'lightslategrey' => _mk_rgb(119, 136, 153),
95             'lightsteelblue' => _mk_rgb(176, 196, 222),
96             'lightyellow' => _mk_rgb(255, 255, 224),
97             'lime' => _mk_rgb( 0, 255, 0),
98             'limegreen' => _mk_rgb( 50, 205, 50),
99             'linen' => _mk_rgb(250, 240, 230),
100             'magenta' => _mk_rgb(255, 0, 255),
101             'maroon' => _mk_rgb(128, 0, 0),
102             'mediumaquamarine' => _mk_rgb(102, 205, 170),
103             'mediumblue' => _mk_rgb( 0, 0, 205),
104             'mediumorchid' => _mk_rgb(186, 85, 211),
105             'mediumpurple' => _mk_rgb(147, 112, 219),
106             'mediumseagreen' => _mk_rgb( 60, 179, 113),
107             'mediumslateblue' => _mk_rgb(123, 104, 238),
108             'mediumspringgreen' => _mk_rgb( 0, 250, 154),
109             'mediumturquoise' => _mk_rgb( 72, 209, 204),
110             'mediumvioletred' => _mk_rgb(199, 21, 133),
111             'midnightblue' => _mk_rgb( 25, 25, 112),
112             'mintcream' => _mk_rgb(245, 255, 250),
113             'mistyrose' => _mk_rgb(255, 228, 225),
114             'moccasin' => _mk_rgb(255, 228, 181),
115             'navajowhite' => _mk_rgb(255, 222, 173),
116             'navy' => _mk_rgb( 0, 0, 128),
117             'oldlace' => _mk_rgb(253, 245, 230),
118             'olive' => _mk_rgb(128, 128, 0),
119             'olivedrab' => _mk_rgb(107, 142, 35),
120             'orange' => _mk_rgb(255, 165, 0),
121             'orangered' => _mk_rgb(255, 69, 0),
122             'orchid' => _mk_rgb(218, 112, 214),
123             'palegoldenrod' => _mk_rgb(238, 232, 170),
124             'palegreen' => _mk_rgb(152, 251, 152),
125             'paleturquoise' => _mk_rgb(175, 238, 238),
126             'palevioletred' => _mk_rgb(219, 112, 147),
127             'papayawhip' => _mk_rgb(255, 239, 213),
128             'peachpuff' => _mk_rgb(255, 218, 185),
129             'peru' => _mk_rgb(205, 133, 63),
130             'pink' => _mk_rgb(255, 192, 203),
131             'plum' => _mk_rgb(221, 160, 221),
132             'powderblue' => _mk_rgb(176, 224, 230),
133             'purple' => _mk_rgb(128, 0, 128),
134             'red' => _mk_rgb(255, 0, 0),
135             'rosybrown' => _mk_rgb(188, 143, 143),
136             'royalblue' => _mk_rgb( 65, 105, 225),
137             'saddlebrown' => _mk_rgb(139, 69, 19),
138             'salmon' => _mk_rgb(250, 128, 114),
139             'sandybrown' => _mk_rgb(244, 164, 96),
140             'seagreen' => _mk_rgb( 46, 139, 87),
141             'seashell' => _mk_rgb(255, 245, 238),
142             'sienna' => _mk_rgb(160, 82, 45),
143             'silver' => _mk_rgb(192, 192, 192),
144             'skyblue' => _mk_rgb(135, 206, 235),
145             'slateblue' => _mk_rgb(106, 90, 205),
146             'slategray' => _mk_rgb(112, 128, 144),
147             'slategrey' => _mk_rgb(112, 128, 144),
148             'snow' => _mk_rgb(255, 250, 250),
149             'springgreen' => _mk_rgb( 0, 255, 127),
150             'steelblue' => _mk_rgb( 70, 130, 180),
151             'tan' => _mk_rgb(210, 180, 140),
152             'teal' => _mk_rgb( 0, 128, 128),
153             'thistle' => _mk_rgb(216, 191, 216),
154             'tomato' => _mk_rgb(255, 99, 71),
155             'turquoise' => _mk_rgb( 64, 224, 208),
156             'violet' => _mk_rgb(238, 130, 238),
157             'wheat' => _mk_rgb(245, 222, 179),
158             'white' => _mk_rgb(255, 255, 255),
159             'whitesmoke' => _mk_rgb(245, 245, 245),
160             'yellow' => _mk_rgb(255, 255, 0),
161             'yellowgreen' => _mk_rgb(154, 205, 50),
162             };
163             }
164              
165             1;
166              
167             =head1 NAME
168              
169             Graphics::ColorNames::WWW - WWW color names and equivalent RGB values
170              
171             =head1 SYNOPSIS
172              
173             require Graphics::ColorNames::WWW;
174              
175             $NameTable = Graphics::ColorNames::WWW->NamesRgbTable();
176             $RgbBlack = $NameTable->{black};
177              
178             =head1 DESCRIPTION
179              
180             This module defines color names and their associated RGB values from various
181             WWW specifications, such as SVG or CSS as well as common browser
182             implementations.
183              
184             See the documentation of L for information how to use
185             this module.
186              
187             Currently, SVG and CSS define the same color keywords and include all color
188             keywords supported by common web browsers. Therefore, the modules
189             Graphics::ColorNames::WWW, L and
190             L behave in identical ways.
191              
192             This may change if the specs should happen to diverge; then this module will
193             become a superset of all color keywords defined by W3C's specs.
194              
195             It is recommended to use this module unless you require exact compatibility
196             with the CSS and SVG specifications or specific browsers.
197              
198             =head2 NOTE
199              
200             Reportedly "fuchsia" was misspelled "fuscia" in an unidentified HTML
201             specification. It also appears to be a common misspelling, so both names are
202             recognized.
203              
204             =head1 LIMITATIONS
205              
206             The C keyword is unsupported. Currently, Graphics::ColorNames does
207             not allow RGBA values.
208              
209             Further, the system color keywords are not assigned to a fixed RGB value and
210             thus unsupported: C, C, C,
211             C, C, C, C,
212             C, C, C, C, C,
213             C, C, C,
214             C, C, C, C, C,
215             C, C, C, C,
216             C, C, C, C (these are deprecated
217             in CSS3)
218              
219             =head1 SEE ALSO
220              
221             L, L,
222             L
223              
224             =head1 AUTHOR
225              
226             Claus FErber
227              
228             Based on C by Robert Rothenberg.
229              
230             =head1 LICENSE
231              
232             Copyright 2005-2009 Claus FErber.
233              
234             Copyright 2001-2004 Robert Rothenberg.
235              
236             All rights reserved. This program is free software; you can
237             redistribute it and/or modify it under the same terms as Perl
238             itself.
239              
240             =cut