GD::Image::Scale2x - Implementation of the Scale2x algorithm for the GD library
use GD; use GD::Image::Scale2x; # load an image my $image = GD::Image->new( 'file.png' ); # scale2x, 3x, and 4x my $scaled2x = $image->scale2x; my $scaled3x = $image->scale3x; my $scaled4x = $image->scale4x; # scale a certain area # (10, 10) to (30, 30) my $scaled = $image->scale2x( 10, 10, 20, 20 );
This module implements the Scale2x algorithm (as well as 3x and 4x). From the Scale2x web site:
Scale2x is real-time graphics effect able to increase the size of small bitmaps guessing the missing pixels without interpolating pixels and blurring the images.
The algorithm itself is explained at http://scale2x.sourceforge.net/algorithm.html. You can see some example results by looking through the test directory.
Takes an image and produces one twice a big. From the Scale2x web site:
The effect works repeating a computation pattern for every pixel of the original image. The pattern starts from a square of 9 pixels and expands the central pixel computing 4 new pixels.
You can specify a portion of the original image by specifying a source x and y plus a width and height.
A similar algorithm to scale2x, except that it produces a 9-pixel result.
Same as scale2x done twice over.
Brian Cassidy <email@example.com>
Copyright 2005-2009 by Brian Cassidy
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.