NAME
Image::Select - Selecting image from images directory.
SYNOPSIS
use Image::Select;
my $obj = Image::Select->new(%parameters);
my $type = $obj->create($output_path);
my ($width, $height) = $obj->sizes($new_width, $new_height);
my $type = $obj->type($new_type);
METHODS
new(%parameters)
-
Constructor.
debug
Debug mode. Default value is 0.
height
Height of image. Default value is 1920.
loop
Returns images in loop. Default value is 0.
path_to_images
Path to images. It is required. Default value is undef.
type
Image type. List of supported types: bmp, gif, jpeg, png, pnm, raw, sgi, tga, tiff Default value is undef.
width
Width of image. Default value is 1080.
create($path)
-
Create image. Returns scalar value of supported file type.
sizes([$width, $height])
-
Set/Get image sizes. Returns actual width and height.
type([$type])
-
Set/Get image type. Returns actual type of image.
ERRORS
new():
No images.
Parameter 'path_to_images' is required.
Image type '%s' doesn't supported.
Class::Utils:
Unknown parameter '%s'.
create():
Cannot read file '%s'.
Error, %s
Cannot resize image from file '%s'.
Error, %s
Cannot write file to '$path'.
Error, %s
No file '%s'.
Image type '%s' doesn't supported.
EXAMPLE1
use strict;
use warnings;
use File::Spec::Functions qw(catfile);
use File::Temp qw(tempfile tempdir);
use Image::Random;
use Image::Select;
# Temporary directory to random images.
my $tempdir = tempdir(CLEANUP => 1);
# Create temporary images.
my $rand = Image::Random->new;
for my $i (1 .. 5) {
$rand->create(catfile($tempdir, $i.'.png'));
}
# Object.
my $obj = Image::Select->new(
'path_to_images' => $tempdir,
);
# Temporary file.
my (undef, $temp) = tempfile();
# Create image.
my $type = $obj->create($temp);
# Print out type.
print $type."\n";
# Unlink file.
unlink $temp;
# Output:
# bmp
EXAMPLE2
use strict;
use warnings;
use File::Spec::Functions qw(catfile);
use File::Temp qw(tempfile tempdir);
use Image::Random;
use Image::Select;
# Temporary directory for random images.
my $tempdir = tempdir(CLEANUP => 1);
# Create temporary images.
my $rand = Image::Random->new;
for my $i (1 .. 5) {
$rand->create(catfile($tempdir, $i.'.png'));
}
# Object.
my $obj = Image::Select->new(
'loop' => 0,
'path_to_images' => $tempdir,
);
# Temporary file.
my (undef, $temp) = tempfile();
# Create image.
while (my $type = $obj->create($temp)) {
# Print out type.
print $type."\n";
}
# Unlink file.
unlink $temp;
# Output:
# bmp
# bmp
# bmp
# bmp
# bmp
DEPENDENCIES
Class::Utils, Error::Pure, File::Basename, File::Find::Rule, File::Find::Rule::MMagic, Imager, List::MoreUtils.
SEE ALSO
- Image::Random
-
Perl class for creating random image.
- Image::Select::Array
-
Selecting image from list with checking.
- Image::Select::Date
-
Selecting image from images directory by date.
REPOSITORY
https://github.com/michal-josef-spacek/Image-Select
AUTHOR
Michal Josef Špaček mailto:skim@cpan.org
LICENSE AND COPYRIGHT
© 2014-2020 Michal Josef Špaček
BSD 2-Clause License
VERSION
0.05