Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: nakładanie 2 obrazków graficznych
Forum PHP.pl > Forum > PHP
Avatarus
Witam
Potrzebuje nałożyć na siebie 2 obrazki graficzne:

i


jak można to zrobić skutecznie?
P.S nie chce żeby te obrazki się mieszały ze sobą. jeden powinien zachodzić na drugi a tam gdzie jest kolor transparenty, powinien pojawić sie drugi obrazek.
muk4
Dałeś tylko jeden obrazek.
Chodzi o to że mają się przenikać czy jak? Gradientem?

Sprawdź imagecopymerge()
Avatarus
dodałem 2 plik graficzny.
Imagecopymerge łączy 2 obrazki, ale jak to robie to on mi je miesza w jeden.
A ja chce żeby się nakładały jak layery w photoshopie np.
da sie to zrobić?
Fifi209
Ten pierwszy z postacią musiałby być na przeźroczystym tle i powinno pójść, pamiętaj pierwszy na drugi masz nałożyć. winksmiley.jpg
muk4
Napisałem coś takiego. Wszystko ładnie opisałem:
  1. <?php
  2. $res_fg = imagecreatefrompng('1.png') or die('FG CREATE FALSE'); //Otworzenie obrazka z postacią
  3. $res_bg = imagecreatefromjpeg('2.jpg') or die('BG CREATE FALSE'); //Otworzenie obrazka z tłem
  4. $white = imagecolorallocate($res_fg, 255, 255, 255); //utworzenie koloru białego
  5. imagecolortransparent($res_fg, $white); //ustawienie koloru białego jako przeźroczystego
  6. imagecopymerge ( $res_bg , $res_fg , '0' , '0', '0', '0', '350', '150', '100') or die('Nie udało się połączyć obrazków.'); //Połączenie obrazków
  7. //resource wyniku jest zapisywany do zmiennej $res_bg
  8.  
  9. //Proste wyświetlenie wyniku:
  10. header('Content-Type: image/png');
  11. imagepng($res_bg);
  12. ?>


U mnie działa.
Pozdrawiam.
Volume
A interesuje Cie opcja poza PHP? Bo jeśli tak to chyba najprościej można to zrobić po prostu za pomocą CSS manewrując własnościami position. Trzeba mieć tylko na uwadze, że przeglądarka IE poniżej 7 nie radzi sobie z kanałem alpha, na siłe można zastosować hack pngbehaviour.
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-2025 Invision Power Services, Inc.