downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Imagick::current> <Imagick::cropImage
Last updated: Fri, 20 May 2011

view this page in

Imagick::cropThumbnailImage

(PECL imagick 2.0.0)

Imagick::cropThumbnailImageCrea una miniatura recortada

Descripción

bool Imagick::cropThumbnailImage ( int $width , int $height )
Warning

Esta función no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

Crea una miniatura de tamaño fijo ampliando o reduciendo de escala la imagen y recortando un área específica desde el centro.

Parámetros

width

El ancho de la miniatura

height

El alto de la miniatura

Valores devueltos

Devuelve TRUE en caso de éxito.

Errores/Excepciones

Lanza ImagickException en caso de error.



Imagick::current> <Imagick::cropImage
Last updated: Fri, 20 May 2011
 
add a note add a note User Contributed Notes Imagick::cropThumbnailImage
martijn at elicit dot nl 03-Jun-2010 12:57
In my opinion this function is not working as expected, tested for imagemagick version 6.3.7

As described above, the function returns an image with a fixed height and a variable width. Here's a fix that will return a cropped thumbnail with the defined dimensions, without variations in the dimensions.

<?php
// define widescreen dimensions
$width = 160;
$height = 90;

// load an image
$i = new Imagick("your image file");
// get the current image dimensions
$geo = $i->getImageGeometry();

// crop the image
if(($geo['width']/$width) < ($geo['height']/$height))
{
   
$i->cropImage($geo['width'], floor($height*$geo['width']/$width), 0, (($geo['height']-($height*$geo['width']/$width))/2));
}
else
{
   
$i->cropImage(ceil($width*$geo['height']/$height), $geo['height'], (($geo['width']-($width*$geo['height']/$height))/2), 0);
}
// thumbnail the image
$i->ThumbnailImage($width,$height,true);

// save or show or whatever the image
$i->setImageFormat("png");
header("Content-Type: image/png");
exit(
$i);
?>
benford at bluhelix dot com 11-Jun-2009 09:14
I found a relevant posting complete with demo code at this site:
http://valokuva.org/?p=8

Sample code goes like this:
<?php
/* Read the image */
$im = new imagick( "test.png" );
/* create the thumbnail */
$im->cropThumbnailImage( 80, 80 );
/* Write to a file */
$im->writeImage( "th_80x80_test.png" );
?>

This is a specialization of the cropImage method. At a high level, this method will create a thumbnail of a given image, with the thumbnail sized at ($width, $height).

If the thumbnail does not match the aspect ratio of the source image, this is the method to use. The thumbnail will capture the entire image on the shorter edge of the source image (ie, vertical size on a landscape image). Then the thumbnail will be scaled down to meet your target height, while preserving the aspect ratio. Extra horizontal space that does not fit within the target $width will be cropped off evenly left and right.

As a result, the thumbnail is usually a good representation of the source image.
domenechs1 at yahoo dot es 03-Mar-2008 05:06
$image = new Imagick($path."test1.jpg");

$image->cropThumbnailImage(160,120); // Crop image and thumb

$image->writeImage($path."test1.jpg");

 
show source | credits | stats | sitemap | contact | advertising | mirror sites