Image::Info::XPM - XPM support for Image::Info
use Image::Info qw(image_info dim);
my $info = image_info("image.xpm");
if (my $error = $info->{error}) {
die "Can't parse image info: $error\n";
}
my $color = $info->{color_type};
my($w, $h) = dim($info);
This modules supplies the standard key names
except for Compression, Gamma, Interlace, LastModificationTime, as well as:
- ColorPalette
-
Reference to an array of all colors used.
This key is only present if
image_info is invoked
as image_info($file, ColorPalette>=1) .
- ColorTableSize
-
The number of colors the image uses.
- HotSpotX
-
The x-coord of the image's hotspot.
Set to -1 if there is no hotspot.
- HotSpotY
-
The y-coord of the image's hotspot.
Set to -1 if there is no hotspot.
- L1D_Histogram
-
Reference to an array representing a one dimensional luminance
histogram. This key is only present if
image_info is invoked
as image_info($file, L1D_Histogram=>1) . The range is from 0 to 255,
however auto-vivification is used so a null field is also 0,
and the array may not actually contain 255 fields.
- XPM_CharactersPerPixel
-
This is typically 1 or 2. See the Image::Xpm manpage.
- XPM_Extension-.*
-
XPM Extensions (the most common is XPMEXT) if present.
$info->process_file($source, $options);
Processes one file and sets the found info fields in the $info object.
This module requires the Image::Xpm manpage
$Image::Info::XPM::RGBLIB is set to /usr/X11R6/lib/X11/rgb.txt
or an equivalent path (see the _get_rgb_txt function for the
complete list) by default, this is used to resolve textual color names
to their RGB counterparts.
the Image::Info manpage, the Image::Xpm manpage
For more information about XPM see
ftp://ftp.x.org/contrib/libraries/xpm-README.html
While the module attempts to be as robust as possible, it may not recognize
older XPMs (Versions 1-3), if this is the case try inserting /* XPM */
as the first line.
Jerrad Pierce <belg4mit@mit.edu>/
Tels - (c) 2006.
Now maintained by Slaven Rezic <srezic@cpan.org>.
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
|