Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Połączenie przezroczystego PNG'a z JPEG'iem, PNG traci przezroczytsość mimo zastosowania alphablending
iVorIus
post 10.07.2010, 13:58:02
Post #1





Grupa: Zarejestrowani
Postów: 145
Pomógł: 18
Dołączył: 11.11.2008
Skąd: Pwo

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


Witam,
szukałem rozwiązań problemu na forum oraz w googlach, lecz wszystko zawodzi.

Mianowicie, nakładam znaczek wodny w png, na obraz jpeg. Po scaleniu obrazów, widzę czarny prostokąt w wymiarach znaczka.
Jak wyczytałem na forum, pomocne powinny być funkcje imagealphablending oraz imagesavealpha. Niestety nie rozwiązały one problemu. Jedynie gdy nie łączyłem obrazów i wyświetlałem do przeglądarki sam znaczek, obydwie funkcje tworzyły jego przezroczystość.

Efekt jaki chce uzyskać to: przezroczystość znaczka po nałożeniu.

  1. function watermark ( $file, $watermarkFile, $opacity = 80 )
  2. {
  3. $image = imagecreatefromjpeg ( $file );
  4. list ( $width, $height ) = getimagesize ( $file );
  5.  
  6. $watermark = imagecreatefrompng ( $watermarkFile );
  7. imagealphablending ( $watermark, false );
  8. imagesavealpha ( $watermark, true );
  9.  
  10. list ( $watermarkWidth, $watermarkHeight ) = getimagesize ( $watermarkFile );
  11.  
  12.  
  13. imagecopymerge ( $image,
  14. $watermark,
  15. $width - $watermarkWidth,
  16. $height - $watermarkHeight,
  17. 0,
  18. 0,
  19. $watermarkWidth,
  20. $watermarkHeight,
  21. $opacity
  22. );
  23.  
  24. header('Content-type: image/jpeg');
  25. imagejpeg( $image );
  26. }


--------------------
Chcieć to móc, lecz trudnością jest chcieć, nie móc.
Go to the top of the page
+Quote Post

Posty w temacie


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: 19.07.2025 - 08:51