Maison > développement back-end > tutoriel php > PHP implémente la fonction de traitement inverse des couleurs des images Compétences php

PHP implémente la fonction de traitement inverse des couleurs des images Compétences php

jacklove
Libérer: 2023-04-01 22:34:01
original
1519 Les gens l'ont consulté

Cet article présente principalement la fonction de traitement inverse des couleurs des images en PHP, impliquant les compétences opérationnelles associées de PHP pour la lecture d'images, les calculs numériques, etc. Les amis dans le besoin peuvent s'y référer

Cet article décrit les exemples PHP implémente la fonction d'inversion de la couleur des images. Je le partage avec vous pour votre référence. Les détails sont les suivants :

Aujourd'hui, j'ai besoin d'utiliser php pour inverser la couleur de l'image et la rendre grise. Je ne savais pas si c'était possible. avant, mais ensuite j'ai vu la fonction imagefilter(), qui sert à le rendre gris. Plus que suffisant, tellement puissant

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

Bien sûr ; , certaines personnes définissent également les 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

code de changement de couleur php :

<?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 de test :

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

Photo originale (prenez cette photo qui ruine l'enfance image parodie que j'utilise souvent comme exemple) :

Après l'exécution (c'est principalement pour tester, quant à savoir si l'image subvertit les trois vues ou les cinq sens, le l'éditeur n'en demandera pas trop~) :

Vous Articles qui peuvent vous intéresser :

Exemples de php installer des extensions via pecl pour expliquer les compétences php

notes d'étude php - utilisation de base de mb_strstr dans php Conseils

PHP méthode pour supprimer des éléments avec un indice spécifié dans une instance php de tableau

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