PHP 7.4.0RC6 Released!

imagecropauto

(PHP 5 >= 5.5.0, PHP 7)

imagecropautoRecadre une image automatiquement en utilisant un des modes disponibles

Description

imagecropauto ( resource $image [, int $mode = IMG_CROP_DEFAULT [, float $threshold = .5 [, int $color = -1 ]]] ) : resource

Rogne automatiquement une image selon le mode.

Liste de paramètres

image

Une ressource d'image, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().

mode

Une constante parmi :

IMG_CROP_DEFAULT
Identique à IMG_CROP_TRANSPARENT. Antérieur à PHP 7.4.0, la bibliothèque libgd intégré utilisait IMG_CROP_SIDES en tant que solution de replis, si l'image n'avait pas de couleur de transparance.
IMG_CROP_TRANSPARENT
Rogne le fond transparent.
IMG_CROP_BLACK
Rogne le fond noir.
IMG_CROP_WHITE
Rogne le fond blanc.
IMG_CROP_SIDES
Utilise les 4 coins de l'image pour tenter de détecter l'arrière-plan à rogner.
IMG_CROP_THRESHOLD
Rogne l'image en utilisant le seuil threshold et color.
threshold

Spécifie la tolérance en pourcentage à utiliser lors de la comparaison de la couleur d'image et de la couleur à rogner. La méthode utilisée pour calculer la différence de couleur est basée sur la distance des couleurs dans le cube RVB(a).

Utilisé uniquement en mode IMG_CROP_THRESHOLD.

Note: Antérieur à PHP 7.4.0, la bibliothèque libgd intégré utilisait un algorithme quelque peu différent, donc le même threshold produisait des résultats différents pour libgd système et intégré.

color

Soit une valeur de couleur RVB, soit un index de palette.

Utilisé uniquement en mode IMG_CROP_THRESHOLD.

Valeurs de retour

Retourne la ressource de l'image rognée en cas de succès ou FALSE si une erreur survient. Si l'image complète a été rognée, imagecrop() retourne FALSE.

Historique

Version Description
7.4.0 Le comportement de imagecropauto de la bibliothèque libgd intégré a été syncrhonisé avec celle de libgd système : IMG_CROP_DEFAULT n'utilise plus IMG_CROP_SIDES comme solution de replis et la tolérance de rognage utilise désormais le même algorithme que libgd système.
7.4.0 La valeur par défault de mode a été modifié en IMG_CROP_AUTO. Auparavant, la valeur par défaut était -1 qui correspond à IMG_CROP_DEFAULT, mais passer -1 est désormais obsolète.

Exemples

Exemple #1 Rognage automatique correcte

Comme indiqué dans la section valeur de retour, imagecropauto() retourne FALSE si l'image entière a été rognée. Dans cet exemple, nous avons une ressource d'image $im qui ne devrait être automatiquement rognée que s'il ya quelque chose à rogner; Sinon, nous voulons conserver à l'image originale.

<?php
$cropped 
imagecropauto($imIMG_CROP_DEFAULT);
if (
$cropped !== false) { // Si une nouvelle ressource d'image a été retournée
    
imagedestroy($im);    // nous détruisons l'image originale
    
$im $cropped;       // et assignons l'image rognée à $im
}
?>

Voir aussi

  • imagecrop() - Recadre une image sur le rectangle donné
add a note add a note

User Contributed Notes 2 notes

up
3
raphael.deiana
3 years ago
In some cases the use of the IMG_CROP_WHITE or IMG_CROP_BLACK does not work. The function returns FALSE. It is best to use the IMG_CROP_THRESHOLD mode and specify the color in fourth argument as in the example below :

<?php

$original_img
= imagecreatefromjpeg($image_path);

// Use this :
$cropped_img_white = imagecropauto($original_img , IMG_CROP_THRESHOLD, null, 16777215);
// Rather than :
$cropped_img_white = imagecropauto($original_img , IMG_CROP_WHITE);

// AND

// Use this :
$cropped_img_black = imagecropauto($original_img , IMG_CROP_THRESHOLD, null, 0);
// Rather than :
$cropped_img_black = imagecropauto($original_img , IMG_CROP_BLACK);

?>
up
-1
Ray.Paseur sometimes uses Gmail
2 years ago
Please see the note on ImageCrop() that describes an extraneous black line at the bottom of the cropped image.
http://php.net/manual/en/function.imagecrop.php#119537

Bug 67447 applies to ImageCropAuto(), too.
https://bugs.php.net/bug.php?id=67447
To Top