Problem mit Wasserzeichen in Bildern
Volker
- php
Hallo zusammen,
ich will ein Wasserzeichen (weiße Schrift) in ein Bild einfügen:
<?php
function bild ($bild) {
// Bild laden
$bild = imagecreatefromjpeg($bild);
// Header setzten
header("Content-type: image/png");
// Bild Infos
$width = imagesx($bild);
$height = imagesy($bild);
// Bilder erzeugen
$img = imagecreatetruecolor($width, $height);
// Bild einfügen
imagecopy($img, $bild, 0, 0, 0, 0, $width, $height);
// Wasserzeichen einfügen
Imagettftext ($img, 16, 0, $width-295, $height-35, ImageColorAllocate ($img, 255, 255, 255), "schriftart.ttf", text');
// Bild anzeigen
imagepng($img);
return $img;
// Speicher freigeben
imagedestroy($img);
}
?>
Klappt auch hervorragend, bis auf eine Sache: wie bekomme ich die Schrift 50% transparent?
Ich hatte mir zuerst überlegt, mit der Schrift ein eigenes png-Bild zu erzeugen, und dieses dann per imagecopymerge transparent in das Ursprungsbild hineinzukopieren, allerdings habe ich dann ein Wasserzeichen mit weißer Schrift auf schwarzem Grund.
Ich will allerdings als Wasserzeichenbild 50% transparente Schrift ohne Hintergrund.
Gibt es eine Möglichkeit - wegen oben genannter Probleme - die Schrift direkt z verdurchsichtigen ;-) ?
Danke im Voraus für Hilfe.
Gruß, Volker
n'abend,
Ich hatte mir zuerst überlegt, mit der Schrift ein eigenes png-Bild zu erzeugen, und dieses dann per imagecopymerge transparent in das Ursprungsbild hineinzukopieren, allerdings habe ich dann ein Wasserzeichen mit weißer Schrift auf schwarzem Grund.
Ich will allerdings als Wasserzeichenbild 50% transparente Schrift ohne Hintergrund.
ein PNG kann durchaus einen transparenten Hintergrund haben, der von einem transluzenten Text belegt wird. Hast du das Bild nicht hinbekommen, oder hat dir PHP einen Strich durch die Rechnung gemacht?
Meine alte GDLib-Bildmanipulationsklasse benutzt an dieser Stelle übrigens imagecopyresampled()
weiterhin schönen abend...
ein PNG kann durchaus einen transparenten Hintergrund haben, der von einem transluzenten Text belegt wird. Hast du das Bild nicht hinbekommen, oder hat dir PHP einen Strich durch die Rechnung gemacht?
Das Bild war als PNG-Bild mit transparentem Hintergrund deklariert, aber PHP fügt dieses Wasserzeichen dann mit schwarzem Hintergund in das zu schützende Bild ein...
Gruß, Volker