NAME
   Image::Select - Perl class for creating random image.

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.
                    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.
            Suffix '%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'.
            Suffix '%s' doesn't supported.

EXAMPLE1
    # Pragmas.
    use strict;
    use warnings;

    # Modules.
    use File::Spec::Functions qw(catfile);
    use File::Temp qw(tempfile tempdir);
    use Image::Select;
    use Image::Random;

    # 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
    # Pragmas.
    use strict;
    use warnings;

    # Modules.
    use File::Spec::Functions qw(catfile);
    use File::Temp qw(tempfile tempdir);
    use Image::Select;
    use Image::Random;

    # 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.

AUTHOR
   Michal Špaček <mailto:[email protected]>

   <http://skim.cz>

LICENSE AND COPYRIGHT
   BSD license.

VERSION
   0.01