- Asido
Infobox Software
name = Asido
developer = [http://sourceforge.net/users/mrasnika/ Kaloyan K. Tsvetkov]
latest_release_version = 0.0.0.1a
latest_release_date = 10th Apr 2007
genre =Image Manupulation
license =LGPL
website = [http://asido.info/ Asido.info]Asido is an open-source
PHP (PHP4 /PHP5 ) image processing solution, with "pluggable" drivers(adapters) for virtually any environment (either GD2 (php_gd2
),ImageMagick via shell,ImageMagick via extension (php_imagick
),MagickWand (php_magickwand
), etc).Features
Asido supports the following features:
* pluggable drivers for GD2 (php_gd2
),MagickWand (php_magickwand
),ImageMagick extension (php_imagick
) as well asImageMagick shell commands
* "hack" drivers: workarrounds for certain disablities of a particular driver by using some of the other functionality provided by the environment
* various resize functionality: proportional resize, resize only by width or height, stretch resize, fit resize, frame resize
* watermark images, including tiling watermark and automatic scaling of large watermarks
* rotate images
* copy images onto one another
* crop images
* grayscale images
* convert images between different filetypesHere are some of the features covered.
Fit Resize
This type of resize is a proportional resize, but its behaviour is affected by the size (dimensions) of the image. If the image is smaller than the "resize frame" (provided by the
$width
and$height
arguments), it will NOT be resized: it will resize only if any of its dimensions are bigger than those of the "resize frame". This feature is very handy; it will save you the pixelation effect if you are trying to resize smaller images to fit into larger "frames".Frame Resize
This is another handy resize feature. It is a kind of compromise between the stretch resize and the proportional resize. This feature will resize the image proportionally using the Fit feature (not the regular proportional resize) and will place it in the center of a canvas, which has
$width
and$height
as its dimensions, and$color
as its background. This is very useful, because it offers the ability to fit virtually any image inside any resize frame - and the proportions will not matter: you can fit a landscape inside a square, or a square inside a portrait, etc. The$color
argument is used in the same manner as it is used when rotating by custsom angles - to fill the left blank areas.Drivers
Currently Asido supports the drivers for the following environments:
* GD2 (php_gd2
) extension
*ImageMagick php_imagick
extension
*MagickWand php_magickwand
extension
*ImageMagick shell commandsExample Code
This example shows how to watermark and resize an image.
/**
* Set the path to the Asido library
*/include('./../../asido/dev/class.asido.php');/**
* Use the GD driver
*/asido::driver('gd');/**
* Create an Asido_Image object
*/$i1 = asido::image( 'the-source-image.jpg', 'filename-with-which-you-want-to-save-the-result.png');/**
* Watermark it
*/asido::watermark($i1, 'put-the-watermark-image-here.png');/**
* Resize it proportionally to make it fit inside a 400x400 frame
*/asido::resize($i1, 400, 400, ASIDO_RESIZE_PROPORTIONAL);/**
* Save it and overwrite the file if it exists
*/$i1->save(ASIDO_OVERWRITE_ENABLED);?>
External links
* [http://sourceforge.net/projects/asido/ Asido project] at [http://www.sourceforge.net SourceForge.net]
* [http://www.php.net/gd GD(GD2) Image Functions (PHP)] , support inPHP
* [http://www.magickwand.org MagickWand for PHP]MagickWand ForPHP manual
* [http://www.imagemagick.org ImageMagick] officialImageMagick project homepage
Wikimedia Foundation. 2010.