qde
Mitglied
Hallo.
Ich möchte Bilder mit einem Wasserzeichen versehen. Das klappt auch alles soweit. Allerdings würde ich gerne nicht das Wasserzeichen "in" das Ursprungsbild hineinzeichnen, sondern "unter" das Bild packen damit vom ursprünglichen Bild nichts überzeichnet wird. Wenn ich bei imagecopy() die Grösse des Bildes mit der Grösse des Ursprungsbildes addiert mit der des Wasserzeichens angebe, gibt es Probleme. Ich weiss nicht mehr weiter. Hier ist der Code:
Vielen Dank für eure Hilfe.
Ich möchte Bilder mit einem Wasserzeichen versehen. Das klappt auch alles soweit. Allerdings würde ich gerne nicht das Wasserzeichen "in" das Ursprungsbild hineinzeichnen, sondern "unter" das Bild packen damit vom ursprünglichen Bild nichts überzeichnet wird. Wenn ich bei imagecopy() die Grösse des Bildes mit der Grösse des Ursprungsbildes addiert mit der des Wasserzeichens angebe, gibt es Probleme. Ich weiss nicht mehr weiter. Hier ist der Code:
Code:
// grösse des ursprungsbildes verändern
$altesBild=ImageCreateFromJPEG("images/natur.jpg");
$width = imagesx($altesBild);
$height = imagesy($altesBild);
if($width>$height)
{
$neueBreite=400;
$neueHoehe=300;
}
else
{
$neueBreite=300;
$neueHoehe=400;
}
$neuesBild=ImageCreateTrueColor($neueBreite,$neueHoehe);
imageantialias($neuesBild, true);
ImageCopyResampled($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$width,$height);
ImageJPEG($neuesBild,'images/natur.jpg',100);
// Bilder laden
$imgsrc = imagecreatefromjpeg("images/natur.jpg");
$imgzeichen = imagecreatefromjpeg("images/wasserzeichen.jpg");
// Bild Infos
$width = imagesx($imgsrc);
$height = imagesy($imgsrc);
// Wasserzeichen infos
$widthw = imagesx($imgzeichen);
$heightw = imagesy($imgzeichen);
// Bilder erzeugen
$img = imagecreatetruecolor($width, $height);
// Bild einfügen
imagecopy($img, $imgsrc, 0, 0, 0, 0, $width, $height);
// Wasserzeichen einfügen
imagecopy($img, $imgzeichen, ($width-$widthw), ($height-$heightw), 0, 0, $widthw, $heightw);
// Bild anzeigen
imagejpeg($img, 'images/natur.jpg', 100);
// Speicher freigeben
imagedestroy($img);
?>
Vielen Dank für eure Hilfe.