Ich weiß, dass dies PLENTY von Zeiten bedeckt ist, aber ich versuche verschiedene Skripte und die Änderung, die ich habe, und ich immer noch kann nicht meine PNG-24 watermark.png zu sein transparent über die Oberseite meines Elternbildes.PHP - Wasserzeichen PNG Transparenz/Alpha
Das ist, was ich habe zur Zeit:
<?
header('content-type: image/jpeg');
$watermark = imagecreatefrompng('watermark.png');
$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);
$image = imagecreatefromjpeg($imageURL);
$image = imagecreatetruecolor($watermark_width, $watermark_height);
$size = getimagesize($imageURL);
imagealphablending($image, false);
imagesavealpha($image, true);
$dest_x = $size[0] - $watermark_width - 5;
$dest_y = $size[1] - $watermark_height - 5;
imagecopymerge($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, 100);
imagejpeg($image);
imagedestroy($image);
imagedestroy($watermark);
?>
Ich habe gerade gelesen eine andere Frage SO und eine der Antworten darauf hingewiesen, dass es nicht transparent sein, wenn Sie diese beiden Zeilen nicht hinzufügen:
imagealphablending($image, false);
imagesavealpha($image, true);
Ich habe sie hinzugefügt und immer noch nicht. Ich habe versucht, Header und Ausgabe auf PNG statt aber immer noch kein Glück. Ich habe das Wasserzeichen in meinen Browser geladen (roh) und es ist definitiv transparent, aber nicht auf dem Bild. Sicherlich kann das nicht so schwierig sein? Irgendwelche Ideen, was ich falsch mache?
Bitte keine Screenshots des Textes einfügen. – meagar
@meagar: Warum? Wenn es Sie so sehr stört, schreiben Sie es um! – TheCarver
Ich tat, aber ich hätte nicht müssen. Text nicht screenshot. Es ist schlecht für das Web, schlecht für die Website und schlecht für seine Benutzer. – meagar