Borykam się z problemem przezroczystości obrazka. Chcę uciąć obrazek pod kątem. Wiadomo, że takiej funkcji nie ma - obracam więc obrazek o jakiś kąt, tnę i odwracam ponownie. Działanie to sprawdza się, ale mam problem z fragmentami, gdzie obrazka nie było - pozostaje czarne tło. Przerobiłem wszelkie dostępne kody z manuala i Google, jak dotąd bez znaczącego efektu. Oto mój kod w wersji rozwojowej:
<?php
$obraz1 = 'red.png';
$obraz2 = 'blue.png';
$img1 = imagecreatefrompng
($obraz1) or
die ("Nie odnaleziono obrazka 1"); $img2 = imagecreatefrompng
($obraz2) or
die ("Nie odnaleziono obrazka 2");
$obrot1 = 320;
$obrot2 = 40;
// obrot
$obracam1 = imagerotate($img2, $obrot1, -1, 0);
imagealphablending($obracam1, true);
imagesavealpha($obracam1, true);
// ciecie
$tne1 = imagecreatetruecolor(76, 282);
imagecopymerge($tne1, $obracam1, 0, 0, 56, 0, 76, 282, 100);
// obrot powrotny
$obracam2 = imagerotate($tne1, $obrot2, -1, 0);
imagealphablending($obracam2, true);
imagesavealpha($obracam2, true);
// tne do wymiaru
$tne2 = imagecreatetruecolor(155, 200);
imagecopymerge($tne2, $obracam2, 0, 0, 60, 0, 155, 200, 100);
imagecopymerge($img1, $tne2, 0, 0, 0, 0, 155, 200, 100);
header('Content-Type: image/png'); imagepng($img1);
imagedestroy($tne1);
imagedestroy($tne2);
imagedestroy($obracam1);
imagedestroy($obracam2);
imagedestroy($img1);
imagedestroy($img2);
?>