Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> PHP miniaturki gif transparent
agweb
post 28.10.2008, 15:18:32
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 28.10.2008

Ostrzeżenie: (0%)
-----


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ź.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
jarek_bolo
post 28.10.2008, 15:36:41
Post #2





Grupa: Zarejestrowani
Postów: 149
Pomógł: 12
Dołączył: 3.03.2008
Skąd: łódzkie

Ostrzeżenie: (0%)
-----


Biblioteka GD nie ma dobrej obsługi przeźroczystości lub np. animowanych gifów.
Do bajerów z grafiką ImageMagick.


--------------------
"Jeden człowiek nie zmieni świata, ale jeden człowiek może przekazać informację która zmieni świat." - David Icke
| PAMIĘTAJ, JESTEŚ POLAKIEM !!! |
Jam jest Polska, Ojczyzna Twoja, ziemia Ojców, z której wzrosłeś. Wszystko, czym jesteś, po Bogu - mnie zawdzięczasz!!
Go to the top of the page
+Quote Post
agweb
post 28.10.2008, 16:41:00
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 28.10.2008

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
webdice
post 28.10.2008, 16:42:18
Post #4


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Proszę o dodanie odpowiedniego bbcode.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 10:52