当前位置: 首页>>代码示例>>PHP>>正文


PHP ImageColorMatch函数代码示例

本文整理汇总了PHP中ImageColorMatch函数的典型用法代码示例。如果您正苦于以下问题:PHP ImageColorMatch函数的具体用法?PHP ImageColorMatch怎么用?PHP ImageColorMatch使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了ImageColorMatch函数的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: ImageTrueColorToPalette2

 public function ImageTrueColorToPalette2(&$image, $dither, $ncolors)
 {
     // http://www.php.net/manual/en/function.imagetruecolortopalette.php
     // zmorris at zsculpt dot com (17-Aug-2004 06:58)
     $width = ImageSX($image);
     $height = ImageSY($image);
     $image_copy = ImageCreateTrueColor($width, $height);
     //ImageCopyMerge($image_copy, $image, 0, 0, 0, 0, $width, $height, 100);
     ImageCopy($image_copy, $image, 0, 0, 0, 0, $width, $height);
     ImageTrueColorToPalette($image, $dither, $ncolors);
     ImageColorMatch($image_copy, $image);
     ImageDestroy($image_copy);
     return true;
 }
开发者ID:exside,项目名称:phpThumb,代码行数:14,代码来源:phpthumb.filters.php

示例2: colorDecrease

 function colorDecrease($image, $dither, $ncolors)
 {
     $width = imagesx($image);
     $height = imagesy($image);
     $colors_handle = ImageCreateTrueColor($width, $height);
     ImageCopyMerge($colors_handle, $image, 0, 0, 0, 0, $width, $height, 100);
     ImageTrueColorToPalette($image, $dither, $ncolors);
     ImageColorMatch($colors_handle, $image);
     ImageDestroy($colors_handle);
 }
开发者ID:vallejos,项目名称:samples,代码行数:10,代码来源:Wallpaper.bkp.php

示例3: ImageTrueColorToPalette2

function ImageTrueColorToPalette2($original_image, $dither, $ncolors)
{
    $width = imagesx($original_image);
    $height = imagesy($original_image);
    $colors_handle = ImageCreateTrueColor($width, $height);
    imagecopymerge($colors_handle, $original_image, 0, 0, 0, 0, $width, $height, 100);
    ImageTrueColorToPalette($original_image, $dither, $ncolors);
    ImageColorMatch($colors_handle, $original_image);
    ImageDestroy($colors_handle);
    return $original_image;
}
开发者ID:kklingman,项目名称:imagemanager,代码行数:11,代码来源:ImageServer.php

示例4: retailler

 private function retailler($nouvelle_largeur, $nouvelle_hauteur, $delta_largeur, $delta_hauteur, $reduite = false)
 {
     $ret = false;
     if (!$this->is_null()) {
         $src_r = null;
         if (!strcmp($this->get_ext(), _UPLOAD_EXTENSION_JPG) || !strcmp($this->get_ext(), _UPLOAD_EXTENSION_JPEG)) {
             $src_r = imagecreatefromjpeg($this->get_src());
         } elseif (!strcmp($this->get_ext(), _UPLOAD_EXTENSION_PNG)) {
             $src_r = imagecreatefrompng($this->get_src());
         } elseif (!strcmp($this->get_ext(), _UPLOAD_EXTENSION_GIF)) {
             $src_r = imagecreatefromgif($this->get_src());
         }
         if ($src_r) {
             if ($this->get_ext() == _UPLOAD_EXTENSION_JPG || $this->get_ext() == _UPLOAD_EXTENSION_JPEG) {
                 $dst_r = ImageCreateTrueColor($nouvelle_largeur, $nouvelle_hauteur);
                 if ($dst_r) {
                     imagecopyresampled($dst_r, $src_r, 0, 0, $delta_largeur, $delta_hauteur, $nouvelle_largeur, $nouvelle_hauteur, $this->get_largeur() - 2 * $delta_largeur, $this->get_hauteur() - 2 * $delta_hauteur);
                     $qualite = $reduite ? self::qualite_jpg_reduite : self::qualite_jpg;
                     $ret = imagejpeg($dst_r, $this->get_src(), $qualite);
                     // Mise à jour des nouvelles dimensions
                     $this->largeur = $nouvelle_largeur;
                     $this->hauteur = $nouvelle_hauteur;
                     imagedestroy($dst_r);
                 }
             } elseif ($this->get_ext() == _UPLOAD_EXTENSION_PNG) {
                 $src_alpha = $this->png_has_transparency($this->get_src());
                 $dst_r = ImageCreateTrueColor($nouvelle_largeur, $nouvelle_hauteur);
                 if ($dst_r) {
                     if ($src_alpha) {
                         imagealphablending($dst_r, false);
                         imagesavealpha($dst_r, true);
                     }
                     imagecopyresampled($dst_r, $src_r, 0, 0, $delta_largeur, $delta_hauteur, $nouvelle_largeur, $nouvelle_hauteur, $this->get_largeur() - 2 * $delta_largeur, $this->get_hauteur() - 2 * $delta_hauteur);
                     /* En cas d'image non transparente on reduit à une image avec palette (pb de taille) */
                     if (!$src_alpha) {
                         $tmp = ImageCreateTrueColor($nouvelle_largeur, $nouvelle_hauteur);
                         ImageCopyMerge($tmp, $dst_r, 0, 0, 0, 0, $nouvelle_largeur, $nouvelle_hauteur, 100);
                         ImageTrueColorToPalette($dst_r, false, 8192);
                         ImageColorMatch($tmp, $dst_r);
                         ImageDestroy($tmp);
                     }
                     $qualite = $reduite ? self::qualite_png_reduite : self::qualite_png;
                     $ret = imagepng($dst_r, $this->get_src(), $qualite);
                     // Mise à jour des nouvelles dimensions
                     $this->largeur = $nouvelle_largeur;
                     $this->hauteur = $nouvelle_hauteur;
                     imagedestroy($dst_r);
                 }
             } elseif ($this->get_ext() == _UPLOAD_EXTENSION_GIF) {
                 $dst_r = ImageCreateTrueColor($nouvelle_largeur, $nouvelle_hauteur);
                 if ($dst_r) {
                     imagecopyresampled($dst_r, $src_r, 0, 0, $delta_largeur, $delta_hauteur, $nouvelle_largeur, $nouvelle_hauteur, $this->get_largeur() - 2 * $delta_largeur, $this->get_hauteur() - 2 * $delta_hauteur);
                     $ret = imagegif($dst_r, $this->get_src());
                     // Mise à jour des nouvelles dimensions
                     $this->largeur = $nouvelle_largeur;
                     $this->hauteur = $nouvelle_hauteur;
                     imagedestroy($dst_r);
                 }
             }
             imagedestroy($src_r);
         }
     }
     return $ret;
 }
开发者ID:PetiLabo,项目名称:PetiLabo,代码行数:64,代码来源:submit_image.php

示例5: colorDecrease

 private function colorDecrease()
 {
     $gifFInal = TMPDIR . "/" . $this->outWidth . "x" . $this->outHeight . "_T.gif";
     if ($this->inFormat == "image/jpeg") {
         $src_img = ImageCreateFromJPEG($this->inPath) or die('colorDecrease: Problema leyendo jpg original');
     } else {
         $src_img = ImageCreateFromGIF($this->inPath) or die('colorDecrease: Problema leyendo gif original');
     }
     $dest_img = imagecreatetruecolor($this->outWidth, $this->outHeight) or die('colorDecrease: Problema en la creaci�n de la imgen nueva gif');
     imagecopy($dest_img, $src_img, 0, 0, 0, 0, $this->outWidth, $this->outHeight);
     ImageTrueColorToPalette($dest_img, true, $this->nColors);
     ImageColorMatch($src_img, $dest_img);
     if (!imagegif($dest_img, $gifFInal)) {
         die("colorDecrease: Problema guardando la IMG gif en: {$outPath}");
     }
     ImageDestroy($dest_img);
     $this->actualSize = filesize($gifFInal);
     if ($this->actualSize > $this->maxFileSize) {
         $this->nColors--;
         if (unlink($gifFInal)) {
             $this->colorDecrease();
         }
     } else {
         unlink($this->jpgGifXcolors);
     }
 }
开发者ID:vallejos,项目名称:samples,代码行数:26,代码来源:imgConverter.class.php


注:本文中的ImageColorMatch函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。