Ce tutoriel explore la bibliothèque GD (Graphic Draw) de PHP pour une manipulation efficace d'image. La gestion de nombreuses images de sites Web peut être difficile, mais GD automatise des tâches comme le redimensionnement, le recadrage et le filtrage.
Ce guide couvre:
Qu'est-ce que GD?
La bibliothèque GD de PHP vous permet de manipuler et de créer des images directement dans vos scripts PHP. Il gère les besoins d'édition d'images communs.
Configuration
sur Windows, activez l'extension php_gd2.dll
dans votre fichier php.ini
(souvent situé dans xamppphpext
). Vérifiez l'installation de GD à l'aide de imagecreatefrompng()
. La fonction imagecolorsforindex($image, $color)
est utile pour une manipulation précise des couleurs. Cependant, pour des ajustements de couleurs plus flexibles, envisagez de travailler avec des composants de couleur individuels (rouge, vert, bleu) pour permettre la tolérance.
Images de redimensionnement par lots
Cet exemple redimensionne toutes les images JPEG dans un répertoire ("Nature /") à une largeur de 640 pixels, ajustant automatiquement la hauteur proportionnellement. Les images redimensionnées sont enregistrées dans un nouveau sous-répertoire "redimensionné".
$directory = 'Nature/'; $images = glob($directory."*.jpg"); foreach($images as $image) { $im_php = imagecreatefromjpeg($image); $im_php = imagescale($im_php, 640); $new_height = imagesy($im_php); $new_name = str_replace('-1920x1080', '-640x'.$new_height, basename($image)); imagejpeg($im_php, $directory.'Resized/'.$new_name); }
Ce code utilise glob()
pour localiser les JPEG, imagecreatefromjpeg()
pour les charger, imagescale()
pour le redimensionnement, et imagejpeg()
pour enregistrer les résultats. Les ajustements de nom de fichier assurent la clarté.
Lot en appliquant les filtres
Cet exemple applique des filtres en niveaux de gris et en contraste (-25 pour un contraste accru) à tous les JPEG dans "Nature /", en enregistrant les images filtrées à un sous-répertoire "GraysCale".
$directory = 'Nature/'; $images = glob($directory."*.jpg"); foreach($images as $image) { $im_php = imagecreatefromjpeg($image); imagefilter($im_php, IMG_FILTER_GRAYSCALE); imagefilter($im_php, IMG_FILTER_CONTRAST, -25); $new_name = basename($image); imagejpeg($im_php, $directory.'Grayscale/'.$new_name); }
imagefilter()
Modifie directement la ressource d'image. Notez que les valeurs de contraste varient de -100 à 100 (les valeurs négatives augmentent le contraste).
Conclusion
La bibliothèque GD de PHP offre de puissantes capacités de manipulation d'images, rationalisant la gestion des images du site Web et gagnant un temps considérable. Les exemples fournis servent de base pour créer des scripts de traitement d'image plus complexes. Des fonctions comme imagesx()
permettent la manipulation de l'image conditionnelle basée sur les dimensions.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!