Asido
|
|
This article has multiple issues. Please help improve it or discuss these issues on the talk page.
|
![]() |
|
| Developer(s) | Kaloyan K. Tsvetkov |
|---|---|
| Stable release | 0.0.0.1a / 10th Apr 2007 |
| Type | Image Manupulation |
| License | LGPL |
| Website | Asido.info |
Asido is open-source PHP (PHP4/PHP5) image processing software, with "pluggable" drivers(adapters) for various environments including GD2 (php_gd2), ImageMagick via shell, ImageMagick via extension (php_imagick), MagickWand (php_magickwand).
Contents |
[edit] Features
Asido supports the following features:
- pluggable drivers for GD2 (
php_gd2), MagickWand (php_magickwand), ImageMagick extension (php_imagick) as well as ImageMagick shell commands - "hack" drivers: workarounds for certain disabilities 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 filetypes
Here are some of the features covered.
[edit] 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".
[edit] 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.
[edit] Drivers
Currently Asido supports the drivers for the following environments:
- GD2 (
php_gd2) extension - ImageMagick
php_imagickextension - MagickWand
php_magickwandextension - ImageMagick shell commands
[edit] Example Code
This example shows how to watermark and resize an image.
<?php
/**
* 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);
?>
[edit] External links
- Asido project at SourceForge.net
- GD(GD2) Image Functions (PHP), support in PHP
- MagickWand for PHP MagickWand For PHP manual
- ImageMagick official ImageMagick project homepage
