Convierte una imagen de color verdadero en una imagen de paleta
me pueden ayudar como dejar la imagen en el color verdadero
imagetruecolortopalette($simg, false, 256);
gracias por la ayuda
| |||
codigo me cambie el color de imagen a paleta Convierte una imagen de color verdadero en una imagen de paleta me pueden ayudar como dejar la imagen en el color verdadero imagetruecolortopalette($simg, false, 256); gracias por la ayuda |
| |||
Respuesta: codigo me cambie el color de imagen a paleta } ####################### IMAGE Functions ####################### function resize_pict($filename, $dest, $width, $height, $pictype = ""){ if ($pictype == "thumb") resize_pict_1($filename, $dest, $width, $height, $pictype = ""); else resize_pict_2($filename, $dest, $width, $height, $pictype = ""); return true; } function resize_pict_1($filename, $dest, $width, $height, $pictype = ""){ @unlink ($dest); $format=strtolower(substr(strrchr($filename, "."), 1)); switch ($format) { case 'gif': $type="gif"; $img = imagecreatefromgif($filename); $img = makeGifTrueColor($img); break; case 'tmp': $type="jpg"; $img = imagecreatefromjpeg($filename); break; case 'png': $type="png"; $img = imagecreatefrompng($filename); break; case 'jpg': $type="jpg"; $img = imagecreatefromjpeg($filename); break; case 'jpeg': $type="jpg"; $img = imagecreatefromjpeg($filename); break; default: $type="jpg"; $img = imagecreatefromjpeg($filename); break; // die ("ERROR; UNSUPPORTED IMAGE TYPE"); // break; } list($org_width, $org_height) = getimagesize($filename); $xoffset = 0; $yoffset = 0; if ($org_width < $width && $org_height < $height){ $width = $org_width; $height = $org_height; } if ($pictype == "thumb") { if ($org_width / $width > $org_height / $height) { $xtmp =$org_width; $xratio =1 - ((($org_width / $org_height) - ($width / $height)) / 2); $org_width=$org_width * $xratio; $xoffset =($xtmp - $org_width) / 2; } elseif ($org_height / $height > $org_width / $width) { $ytmp =$org_height; $yratio =1 - ((($width / $height) - ($org_width / $org_height)) / 2); $org_height=$org_height * $yratio; $yoffset =($ytmp - $org_height) / 2; } } $img_n = imagecreatetruecolor($width, $height); imagecopyresampled($img_n, $img, 0, 0, $xoffset, $yoffset, $width, $height, $org_width, $org_height); if ($width > $org_width || $height > $org_height ) imagejpeg($img, $dest); else imagejpeg($img_n, $dest); return true; } function resize_pict_2($filename, $dest, $twidth, $theight, $pictype = ""){ @unlink ($dest); $format=strtolower(substr(strrchr($filename, "."), 1)); switch ($format) { case 'gif': $type="gif"; $simg = imagecreatefromgif($filename); $simg = makeGifTrueColor($simg); break; case 'tmp': $type="jpg"; $simg = imagecreatefromjpeg($filename); break; case 'png': $type="png"; $simg = imagecreatefrompng($filename); break; case 'jpg': $type="jpg"; $simg = imagecreatefromjpeg($filename); break; case 'jpeg': $type="jpg"; $simg = imagecreatefromjpeg($filename); break; default: $type="jpg"; $simg = imagecreatefromjpeg($filename); break; // die ("ERROR; UNSUPPORTED IMAGE TYPE"); // break; } $currwidth = imagesx($simg); $currheight = imagesy($simg); if ($currwidth < $twidth && $currheight < $theight){ $twidth = $currwidth; $theight = $currheight; } if ($currheight > $currwidth) { $zoom = $twidth / $currheight; $newheight = $theight; $newwidth = $currwidth * $zoom; } else { $zoom = $twidth / $currwidth; $newwidth = $twidth; $newheight = $currheight * $zoom; } $dimg = imagecreate($newwidth, $newheight); imagetruecolortopalette($simg, false, 256); $palsize = ImageColorsTotal($simg); for ($i = 0; $i < $palsize; $i++) { $colors = ImageColorsForIndex($simg, $i); ImageColorAllocate($dimg, $colors['red'], $colors['green'], $colors['blue']); } imagecopyresized($dimg, $simg, 0, 0, 0, 0, $newwidth, $newheight, $currwidth, $currheight); imagejpeg($dimg, $dest); imagedestroy($simg); imagedestroy($dimg); return true; } function makeGifTrueColor($img){ if (!imageistruecolor($img)) { $w = imagesx($img); $h = imagesy($img); $original_transparency = imagecolortransparent($img); if ($original_transparency >= 0) { $background = @imagecreate($w, $h); imagecolorallocate($background, 255, 255, 255); imagecopymerge($background,$img,0,0,0,0,$w,$h,100) ; $img = $background; } } return $img; } asi lo tengo completo ayuda por favor necesito que me salga el color verdadero de las imagenes Última edición por maurosarria; 05/03/2011 a las 10:01 |
| |||
Respuesta: codigo me cambie el color de imagen a paleta Alguien que me puede ayudar ese codigo controla las imagenes que subo al servidor , pero cuando el codigo las sube , salen muy mal en forma de paleta con sombras ... alguien me puede dar la solucion graciass |
Etiquetas: |