- split libt1 Type 1 font support into a sub-module
https://rt.cpan.org/Ticket/Display.html?id=49616 (partial)
+ - add a preload() class method for use in forking servers, and to
+ work around limitations in PAR.
+ https://rt.cpan.org/Ticket/Display.html?id=65665
+
Bug fixes:
- paletted writes to a masked image are now masked correctly.
# threads shouldn't try to close raw Imager objects
sub Imager::ImgRaw::CLONE_SKIP { 1 }
+sub preload {
+ # this serves two purposes:
+ # - a class method to load the file support modules included with Image
+ # (or were included, once the library dependent modules are split out)
+ # - something for Module::ScanDeps to analyze
+ # https://rt.cpan.org/Ticket/Display.html?id=6566
+ local $@;
+ eval { require Imager::File::GIF };
+ eval { require Imager::File::JPEG };
+ eval { require Imager::File::PNG };
+ eval { require Imager::File::SGI };
+ eval { require Imager::File::TIFF };
+ eval { require Imager::File::ICO };
+ eval { require Imager::Font::W32 };
+ eval { require Imager::Font::FT2 };
+ eval { require Imager::Font::T1 };
+}
+
# backward compatibility for %formats
package Imager::FORMATS;
use strict;
polyline() - L<Imager::Draw/polyline>
+preload() - L<Imager::Files/preload>
+
read() - L<Imager::Files> - read a single image from an image file
read_multi() - L<Imager::Files> - read multiple images from an image
C<Imager::File::>I<your-format-name>C<Writer> and Imager will attempt
to autoload it.
+=head1 PRELOADING FILE MODULES
+
+=over
+
+=item preload
+
+This preloads the file support modules included with or that have been
+included with Imager in the past. This is intended for use in forking
+servers such as mod_perl.
+
+If the module is not available no error occurs.
+
+Preserves $@.
+
+ use Imager;
+ Imager->preload;
+
+=back
+
=head1 EXAMPLES
=head2 Producing an image from a CGI script
my @pod = sort grep !/^inc/ && /\.(pm|pl|pod|PL)$/, keys %$manifest;
plan tests => scalar(@pod);
my @stopwords = qw/
+API
+Arnar
+BMP
+Blit
+CGI
+CMYK
+CPAN
+FreeType
+GIF
+HSV
+Hrafnkelsson
+ICO
+IMAGER
Imager
Imager's
-IMAGER
-GIF
JPEG
PNG
-TIFF
-BMP
+PNM
+RGB
+RGBA
SGI
TGA
-RGB
-ICO
-PNM
+TIFF
+UTF-8
+Uncategorized
bilevel
+const
dpi
-Arnar
-Hrafnkelsson
-API
-paletted
-guassian
-metadata
-CPAN
eg
+guassian
ie
-CMYK
-HSV
-CGI
-const
-varargs
-FreeType
-UTF-8
-RGBA
-postfix
infix
-unary
+metadata
+paletted
+postfix
+preload
+preloading
+preloads
renderer
-Uncategorized
-Blit
tuple
+unary
+varargs
/;
local %Pod::Wordlist::Wordlist = %Pod::Wordlist::Wordlist;