Avec le développement d'Internet, le traitement d'image est devenu une partie importante du développement de sites Web modernes. La coupe d'images est une exigence commune, qui permet à une grande image d'être divisée en plusieurs petites images ou épissé en une seule grande image. Cet article vous montrera comment utiliser PHP pour combiner les bibliothèques GD pour obtenir la coupe d'images, avec des exemples de code.
Avant de faire un traitement d'image, assurez-vous que votre serveur a installé des bibliothèques PHP et GD. La bibliothèque GD est un puissant outil de traitement d'image qui peut nous aider à générer, à l'échelle, à ajouter des filigranes et à d'autres opérations. Si vous ne savez pas si la bibliothèque GD est installée, vous pouvez utiliser la fonction phpinfo () pour afficher les informations pertinentes.
Tout d'abord, nous devons charger l'image que nous devons couper en mémoire. PHP fournit des fonctions telles que ImageCreateFromJPEG (), ImageCreateFrommpng () et ImageCreateFromGif (), nous permettant de créer des ressources d'image à partir de fichiers d'image dans différents formats.
Voici un exemple de code simple pour charger une image au format JPEG:
<?php<br> $ img = imageCreateFromJPEG ('example.jpg');
Ensuite, nous pouvons utiliser la fonction ImageCopyResampled () fournie par la bibliothèque GD pour couper l'image d'origine en plusieurs petites images. La clé de la coupe est de déterminer la position et la taille de la coupe.
Le code suivant montre comment couper une image de 400x400 en quatre petites images 200x200:
<?php<br> // Créer quatre ressources d'image vierges de 200x200<br> $ smailMg1 = ImageCreateTrueColor (200, 200);<br> $ smailMg2 = ImageCreateTrueColor (200, 200);<br> $ smailMg3 = ImageCreateTrueColor (200, 200);<br> $ smailMg4 = ImageCreateTrueColor (200, 200);<br><br> // coupe des photos<br> ImageCopyRes échantillonné ($ sailtimg1, $ img, 0, 0, 0, 0, 200, 200, 400, 400);<br> ImageCopyRes échantillonné ($ smaltimg2, $ img, 0, 0, 200, 0, 200, 200, 400, 400);<br> ImageCopyRes échantillonné ($ smalMg3, $ img, 0, 0, 0, 200, 200, 200, 400, 400);<br> ImageCopyRes échantillonné ($ smaltimg4, $ img, 0, 0, 200, 200, 200, 200, 400, 400);<br><br> // Enregistrer les images coupées<br> ImageJPEG ($ sailtimg1, 'sailtimg1.jpg');<br> ImageJPEG ($ sailtimg2, 'sailtimg2.jpg');<br> ImageJPEG ($ sailtimg3, 'sailtimg3.jpg');<br> ImageJPEG ($ sailtimg4, 'sailtimg4.jpg');
Dans l'exemple ci-dessus, nous avons d'abord créé quatre ressources d'image vierges de la taille 200x200. Ensuite, utilisez la fonction ImageCopyResampled () pour couper l'image d'origine en quatre petites images et enregistrer dans un fichier.
Après avoir traité l'image, nous devons libérer de la mémoire pour éviter les fuites de mémoire. Les ressources d'image peuvent être détruites en appelant la fonction IMAgestRoy ():
<?php<br> ImagedStroy ($ smaltimg1);<br> ImageDestroy ($ smallImg2);<br> ImageDestroy ($ smallIMG3);<br> ImageDestroy ($ smaltimg4);
En appelant la fonction iMageDestroy (), nous pouvons effacer la mémoire occupée lors du traitement des images pour libérer des ressources pour d'autres tâches.
Cet article décrit comment utiliser les bibliothèques PHP et GD pour la coupe d'images. Tout d'abord, nous chargeons l'image en mémoire, puis utilisons la fonction ImageCopyResampled () pour couper l'image en plusieurs petites images et l'enregistrer. Enfin, nous libérons la ressource d'image via la fonction iMageDestroy (). J'espère que cet article peut vous aider à mieux comprendre et utiliser des bibliothèques PHP et GD pour la coupe d'images.