Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP miniaturki gif transparent
Forum PHP.pl > Forum > Gotowe rozwiązania > Szukam
agweb
Mam pytanie dotyczące poniższego kodu, który powinien tworzyć miniaturkę gif-a. Niestety miniaturki dla gif-ów z przezroczystym tłem nie tworzą się właściwie. Nadmienię, że tworzenie png na podobnej zasadzie działa ok.


$docel_img=ImageCreateTrueColor($szer,$wys);

$transparent = imagecolorallocatealpha($zrodlo_img, 255, 255, 255, 127);

imagefilledrectangle($docel_img, 0, 0, $szer, $wys, $transparent);
ImageColorTransparent($docel_img, $transparent);
imagealphablending($docel_img, false);
imagesavealpha($docel_img, true);

// create the temp image
ImageCopyResampled($docel_img,$zrodlo_img, 0, 0, 0, 0, $szer, $wys, $size[0], $size[1]);
imagegif($docel_img,$miniaturka);


Będę wdzięczny za wszelką podpowiedź.
jarek_bolo
Biblioteka GD nie ma dobrej obsługi przeźroczystości lub np. animowanych gifów.
Do bajerów z grafiką ImageMagick.
agweb
OK. yahoo.gif Zadziałało to tak.. Niestety przy przezroczystości musi być oryginalna paleta kolorów:

if($transparent!=-1)
{
$docel_img=ImageCreate($szer,$wys);
imagepalettecopy($docel_img,$zrodlo_img);
imagefilledrectangle($docel_img, 0, 0, $szer, $wys, $transparent);
ImageColorTransparent($docel_img, $transparent);
}else
{
$docel_img=ImageCreateTrueColor($szer,$wys);
};


ImageCopyResampled($docel_img,$zrodlo_img, 0, 0, 0, 0, $szer, $wys, $size[0], $size[1]);
imagegif($docel_img,$miniaturka);


Może komuś się przyda bo ja się trochę napociłem przy tym.
Pozdrawiam wszystkich.
webdice
Proszę o dodanie odpowiedniego bbcode.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.