Comment implémenter le traitement des couleurs inverse des images en PHP

小云云
Libérer: 2023-03-19 20:40:02
original
1387 Les gens l'ont consulté

Aujourd'hui, il est nécessaire d'utiliser PHP pour inverser la couleur de l'image et la convertir en gris. Je ne savais pas si c'était faisable avant, mais ensuite j'ai vu la fonction imagefilter(), qui est largement suffisante. pour le convertir en gris. C'est tellement puissant. L'auteur de cet article vous présentera l'implémentation de PHP. La fonction de traitement inverse des couleurs des images implique les compétences opérationnelles associées de PHP pour la lecture d'images, les calculs numériques, etc. Les amis qui en ont besoin peuvent référez-vous-y. J'espère que cela pourra aider tout le monde.


imagefilter($im, IMG_FILTER_GRAYSCALE)
Copier après la connexion

Bien sûr, certaines personnes définissent également des paramètres de gris en CSS


<style type="text/css">
img {
-webkit-filter: grayscale(1);/* Webkit */
filter:gray;/* IE6-9 */
filter: grayscale(1);/* W3C */
}
</style>
Copier après la connexion

conversion php Code couleur :


<?php
/**
* 主要用于图片的处理函数
*/
//图片的反色功能
function color($url) {
  //获取图片的信息
    list($width, $height, $type, $attr)= getimagesize($url);
    $imagetype = strtolower(image_type_to_extension($type,false));
    $fun = &#39;imagecreatefrom&#39;.($imagetype == &#39;jpg&#39;?&#39;jpeg&#39;:$imagetype);
    $img = $fun($url);
    for ($y=0; $y < $height; $y++) {
      for ($x=0; $x <$width; $x++) {
        //获取颜色的所以值
        $index = imagecolorat($img, $x, $y);
        //获取颜色的数组
        $color = imagecolorsforindex($img, $index);
        //颜色值的反转
        $red = 256 - $color[&#39;red&#39;];
        $green = 256 - $color[&#39;green&#39;];
        $blue = 256 - $color[&#39;blue&#39;];
        $hex = imagecolorallocate($img, $red, $green, $blue);
        //给每一个像素分配颜色值
        imagesetpixel($img, $x, $y, $hex);
      }
    }
    //输出图片
    switch ($imagetype) {
      case &#39;gif&#39;:
      imagegif($img);
      break;
      case &#39;jpeg&#39;:
      imagejpeg($img);
      break;
      case &#39;png&#39;:
      imagepng($img);
      break;
      default:
      break;
    }
}
Copier après la connexion

Code test :


$imgurl=&#39;1.jpg&#39;;
echo color($imgurl);
Copier après la connexion

Photo originale (prenez cette photo parodie de ruine d'enfance souvent utilisée par l'éditeur comme exemple) :

Après avoir couru (c'est principalement pour tester, pour savoir si l'image subvertit les trois points de vue ou les cinq sens), l'éditeur n'en demandera pas trop ~) :

Recommandations associées :

PHP pour convertir une couleur en sa couleur inverse Le code

php convertit la couleur en sa couleur inverse, php convertit la couleur en sa

Méthode d'implémentation des couleurs inverses du traitement d'image Python

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!