Imagick::resizeImage
(PECL imagick 2.0.0)
Imagick::resizeImage — Escala una imagen
Descripción
$columns
, int $rows
, int $filter
, float $blur
[, bool $bestfit = false
] )Escala una imagen a las dimensiones deseadas con un filtro.
Nota: La conducta del parámetro
bestfitcambió en Imagick 3.0.0. Antes de esta versión dar la dimensión de 400x400 a una imagen de 200x150 debería no tener efecto. En Imagick 3.0.0 y superiores la imagen sería llevada al tamaño de 400x300 ya que este es el "mejor ajuste" para las dimensiones dadas. Si el parámetrobestfites utilizado, se debe indicar tanto el ancho como el alto.
Parámetros
-
columns -
Ancho de la imagen
-
rows -
Alto de la imagen
-
filter -
Consulte la lista de constantes de filtro.
-
blur -
El factor de borrosidad donde > 1 es borroso, < 1 es nítido.
-
bestfit -
Parámetro de ajuste opcional.
Valores devueltos
Devuelve TRUE en caso de éxito.
Historial de cambios
| Versión | Descripción |
|---|---|
| 2.1.0 | Añadido el parámetro opcional de ajuste. Este método ahora soporta escalas proporcionales. Pase cero como parámetro para escalar proporcionalmente. |
Ejemplos
Ejemplo #1 Imagick::resizeImage()
<?php
function resizeImage($imagePath, $width, $height, $filterType, $blur, $bestFit, $cropZoom) {
//The blur factor where > 1 is blurry, < 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();
}
?>