update : 2015.11.03
php.shukuma.com

검색:
 
 
Scales an image

Imagick::resizeImage

(PECL imagick 2.0.0)

Imagick::resizeImageScales an image

설명

bool Imagick::resizeImage ( int $columns , int $rows , int $filter , float $blur [, bool $bestfit = false ] )

Scales an image to the desired dimensions with a filter.

Note: The behavior of the parameter bestfit changed in Imagick 3.0.0. Before this version given dimensions 400x400 an image of dimensions 200x150 would be left untouched. In Imagick 3.0.0 and later the image would be scaled up to size 400x300 as this is the "best fit" for the given dimensions. If bestfit parameter is used both width and height must be given.

인수

columns

Width of the image

rows

Height of the image

filter

Refer to the list of filter constants.

blur

The blur factor where > 1 is blurry, < 1 is sharp.

bestfit

Optional fit parameter.

반환값

성공시에 TRUE를 반환합니다.

변경점

버전 설명
2.1.0 Added optional fit parameter. This method now supports proportional scaling. Pass zero as either parameter for proportional scaling.

예제

Example #1 Imagick::resizeImage()

<?php
function resizeImage($imagePath$width$height$filterType$blur$bestFit$cropZoom) {
    
//The blur factor where &gt; 1 is blurry, &lt; 1 is sharp.
    
$imagick = new \Imagick(realpath($imagePath));

    
$imagick->resizeImage($width$height$filterType$blur$bestFit);

    
$cropWidth $imagick->getImageWidth();
    
$cropHeight $imagick->getImageHeight();

    if (
$cropZoom) {
        
$newWidth $cropWidth 2;
        
$newHeight $cropHeight 2;

        
$imagick->cropimage(
            
$newWidth,
            
$newHeight,
            (
$cropWidth $newWidth) / 2,
            (
$cropHeight $newHeight) / 2
        
);

        
$imagick->scaleimage(
            
$imagick->getImageWidth() * 4,
            
$imagick->getImageHeight() * 4
        
);
    }


    
header("Content-Type: image/jpg");
    echo 
$imagick->getImageBlob();
}

?>