Avec la demande croissante de traitement d'image, il devient de plus en plus important d'utiliser PHP pour le développement de la fonction du filtre d'image. Cet article présentera comment implémenter la fonction de filtrage d'images via la bibliothèque GD de PHP pour vous aider à créer facilement des effets d'image intéressants.
Pour obtenir l'effet de filtre d'image, vous devez d'abord vous assurer que PHP a installé la bibliothèque GD. Vous pouvez vérifier si la bibliothèque GD est installée en suivant la commande:
php -i | grep "GD"
Si le résultat de retour contient "GD Prise en charge: activé", cela signifie que la bibliothèque GD a été installée. Si ce n'est pas installé, vous pouvez utiliser la commande suivante pour installer:
sudo apt-get install php-gd
Avant d'utiliser PHP pour traiter les filtres d'image, une image doit être ouverte. Voici un exemple de code qui ouvre et affiche l'image:
<?php
$image = imagecreatefromjpeg('path/to/image.jpg');
$width = imagesx($image);
$height = imagesy($image);
header('Content-Type: image/jpeg');
imagejpeg($image);
imagedestroy($image);
?>
Le code ci-dessus ouvre le fichier image via la fonction ImageCreateFromJPEG () et obtient la largeur et la hauteur de l'image via imagesx () et images (). Ensuite, le type de contenu de l'image est défini via la fonction d'en-tête (), et la fonction ImageJPEG () est utilisée pour afficher l'image sur le navigateur, et enfin la mémoire est libérée.
Ensuite, nous expliquerons comment appliquer différents types de filtres sur les images. Nous couvrirons les filtres en niveaux de gris, les filtres d'inversion et les filtres de flou gaussien.
Le filtre en niveaux de gris convertit une image couleur en une image en noir et blanc. Voici le code pour appliquer un filtre en niveaux de gris:
<?php
$image = imagecreatefromjpeg('path/to/image.jpg');
imagefilter($image, IMG_FILTER_GRAYSCALE);
header('Content-Type: image/jpeg');
imagejpeg($image);
imagedestroy($image);
?>
Dans ce code, utilisez la fonction ImageFilter () et passez la constante IMG_FILTER_GRAYSCALE pour réaliser l'effet de filtre en niveaux de gris.
Le filtre d'inversion inverse la couleur de l'image. Voici le code pour inverser le filtre:
<?php
$image = imagecreatefromjpeg('path/to/image.jpg');
imagefilter($image, IMG_FILTER_NEGATE);
header('Content-Type: image/jpeg');
imagejpeg($image);
imagedestroy($image);
?>
Utilisez la fonction ImageFilter () et passez la constante IMG_FILTER_NEGATE pour appliquer le filtre d'inversion.
Les filtres à flou gaussien peuvent brouiller l'image et le rendre plus doux. Voici le code pour appliquer un filtre flou gaussien:
<?php
$image = imagecreatefromjpeg('path/to/image.jpg');
imagefilter($image, IMG_FILTER_GAUSSIAN_BLUR);
header('Content-Type: image/jpeg');
imagejpeg($image);
imagedestroy($image);
?>
En passant la constante IMG_FILTER_GAUSSIAN_BLUR, la fonction ImageFilter () peut appliquer un filtre de flou gaussien à une image.
Cet article décrit comment utiliser les bibliothèques PHP et GD pour développer des fonctions de filtre d'image. Nous avons expliqué comment activer les images, appliquer des filtres à gris, des filtres d'inversion et des filtres de flou gaussien. Après avoir maîtrisé ces compétences de base, vous pouvez essayer plus d'effets de traitement d'image et créer vos propres fonctions de filtre d'image.