cze
6
2013

Łączenie obrazów PNG + kanał przezroczystości = PHP + ImageMagick

Każdy kto bawił się do tej pory obrazami zapisanymi w formacie PNG 24bit z kanałem przezroczystości zrozumiał, że nie jest to takie łatwe jakby się mogło wydawać :) Przyczyną tego jest kanał alpha. Sama bibliotek GD wspomaga obróbkę PNG z przezroczystością, lecz niestety nie działa tak jak powinna przy ich łączeniu (spłaszczaniu) pomiędzy sobą. Rozwiązaniem jest użycie biblioteki ImageMagick dla PHP przez API imagick.

 

Opis

  1. Łączenie dwóch plików PNG z kanałem przezroczystości.
  2. Ustawienie tła na białe – usuwamy przezroczystość dla zapisu do JPG.
  3. Spłaszczenie warstw/obrazu.
  4. Ustawienie formatu pliku na JPG.
  5. Zapis lub wyświetlenie pliku.

 

Fragment kodu

Dla przykładu posłużą nam dwa pliki PNG, obydwa z kanałami przezroczystości.

 

Wynik

Plik zapisany do JPG.

 

Dodatkowe informacje

Podobne tematy

Autor wpisu: Arkadiusz Krakiewicz

Programista i właściciel sklepu jednocześnie, dzięki temu rozumie potrzeby osób prowadzących sprzedaż w internecie. Od 2006 związany z eCommerce. Zaczynał jako freelancer tworząc sklepy oraz strony www. Aktualnie zajmuje się: programowanie w PHP, Symfony 2, Android, PrestaShop, osCommerce, OpenCart, WordPress.

Dodaj komentarz

Anti-Spam

O mnie

Arkadiusz Krakiewicz
Programista aplikacji webowych dla branży eCommerce. Jednocześnie jako właściciel sklepu zna od "podszewki" potrzeby osób prowadzących sprzedaż w internecie.
W swoich rozwiązaniach stawia na funkcjonalność i wydajność aplikacji pod kątem obsługi klienta.
[X]
Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików cookies.
Możesz określić warunki przechowywania lub dostępu do plików cookies w Twojej przeglądarce.
Więcej w Skrypty i moduły
mysql backup php
Backup bazy danych MySQL + PHP (dump)

Wrzucam przydatny skrypt, a dokładniej klasę wraz z jej użyciem do tworzenia kopii zapasowej bazy danych MySQL. Jest to zmodyfikowana...

Zamknij