Comment utiliser ImageColorResolve () pour créer un effet d'image "à faible pixélation" de style rétro?
Dans la conception Web moderne, le style rétro est devenu une tendance visuelle populaire. De nombreux concepteurs et développeurs ont commencé à utiliser la «faible pixélation» pour simuler les anciens graphiques informatiques et créer des effets visuels rétro. En PHP, la fonction ImageColorResolve () peut nous aider à y parvenir en générant des images pixélées qui ressemblent à une faible résolution.
ImageColorResolve () est une fonction de la bibliothèque PHP GD qui analyse une image et renvoie une valeur RVB de la couleur spécifiée. Il est souvent utilisé en combinaison avec d'autres fonctions de traitement d'image pour nous aider à effectuer l'analyse des couleurs, la modification et d'autres opérations d'images.
Pour obtenir un effet rétro de «faible pixélation», nous devons utiliser une technique qui convertit les images à haute résolution en images à basse résolution. En bref, il s'agit de réduire les détails de l'image afin que l'image semble être composée de quelques blocs de couleurs. En combinant la fonction ImageColorResolve () , nous pouvons extraire des couleurs spécifiques dans l'image, puis simuler l'effet des images à basse résolution en recombinant ces blocs de couleurs.
Tout d'abord, nous devons charger l'image. Supposons que nous ayons déjà un fichier image et que nous pouvons utiliser les fonctions ImageCreateFromJPEG () ou ImageCreateFrommpng () pour charger l'image.
<?php
$image = imagecreatefromjpeg('your-image.jpg'); // Chargement des images
if (!$image) {
die('Le chargement d'image a échoué');
}
?>
Ensuite, nous réduisons la taille de l'image à une résolution inférieure, créant un effet pixélé. Cela peut être implémenté à l'aide de la fonction ImagesCale () .
<?php
// Définir une nouvelle taille basse résolution
$new_width = imagesx($image) / 10;
$new_height = imagesy($image) / 10;
$image_resized = imagescale($image, $new_width, $new_height);
if (!$image_resized) {
die('La mise à l'échelle de l'image a échoué');
}
?>
Lorsque nous réduisons l'image, nous devons redonner l'image à sa taille d'origine. Cela peut simuler les effets de pixélation à basse résolution.
<?php
$image_final = imagecreatetruecolor(imagesx($image), imagesy($image));
imagecopyresampled($image_final, $image_resized, 0, 0, 0, 0, imagesx($image), imagesy($image), $new_width, $new_height);
?>
Maintenant, nous pouvons utiliser ImageColorResolve () pour extraire les couleurs principales de l'image. Supposons que nous ne voulons conserver que quelques couleurs pour améliorer l'effet à faible pixel de style rétro.
<?php
// Obtenez la couleur d'un point de pixel spécifique
$color = imagecolorat($image_final, 100, 100); // Obtenez l'emplacement(100, 100)Couleur de pixels
$rgb = imagecolorsforindex($image_final, $color); // Obtenez les pixelsRGBvaleur
// utiliser imagecolorresolve() Fonctions pour l'analyse des couleurs
$resolved_color = imagecolorresolve($image_final, $rgb['red'], $rgb['green'], $rgb['blue']);
?>
Enfin, enregistrez ou sortiez l'image modifiée au navigateur.
<?php
// Image de sortie au navigateur
header('Content-Type: image/jpeg');
imagejpeg($image_final);
// Libérer les ressources
imagedestroy($image);
imagedestroy($image_resized);
imagedestroy($image_final);
?>
Grâce aux étapes ci-dessus, nous avons réussi à créer un effet de pixélation à faible style rétro à l'aide des fonctions PHP et ImageColorResolve () . Créez d'abord des effets pixélisés en réduisant la résolution de l'image, puis extraire les couleurs à l'aide d'imageColorResolve () , et enfin appliquer ces couleurs à l'image pour obtenir un effet visuel de style rétro.
De cette façon, vous pouvez facilement ajouter une touche de nostalgie à votre page Web ou projet, créant un style unique de faible pixélisation.