Imagick::resizeImage
(PECL imagick 2.0.0)
Imagick::resizeImage — Redimensionne une image
Description
$columns
, int $rows
, int $filter
, float $blur
[, bool $bestfit = false
] )Redimensionne une image aux dimensions désirées, avec un filtre.
Note: Le comportement du paramètre
bestfita changé avec Imagick 3.0.0. Avant cette version, fournir les dimensions 400x400 à une image de dimensions 200x150 faisait que la partie gauche était inchangée. Avec Imagick 3.0.0 et suivants, l'image est réduite à la taille 400x300, sachant que c'est le meilleur résultat pour ces dimensions. Si le paramètrebestfitest utilisé, la largeur et la hauteur doivent être fournies.
Liste de paramètres
-
columns -
La largeur de l'image cible.
-
rows -
La hauteur de l'image cible.
-
filter -
Une constante de filtre.
-
blur -
Le facteur de flou, où > 1 est flou, et < 1 est net.
-
bestfit -
Paramètre optionnel de fit.
Valeurs de retour
Returns TRUE on success.
Historique
| Version | Description |
|---|---|
| 2.1.0 | Ajout d'un paramètre optionnel de fit. Cette méthode supporte maintenant la mise à l'échelle proportionnelle. Passez zéro comme valeur de paramètre pour une mise à l'échelle proportionnelle. |
Exemples
Exemple #1 Exemple avec Imagick::resizeImage()
<?php
function resizeImage($imagePath, $width, $height, $filterType, $blur, $bestFit, $cropZoom) {
// Le facteur de flou où > 1 correspond à totalement flou, et < 1 correspond à fort.
$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();
}
?>