Hallo,

Ik ben bezig om een script te schrijven om een watermerk png-afbeelding op een jpg afbeelding te zetten in een img tag.
Maar ik krijg de volgende output:

����JFIF``��>CREATOR: gd-jpeg v1.0 (using IJG JPEG v90), default quality ��C    $.' ",#(7),01444'9=82<.342��C  2!!22222222222222222222222222222222222222222222222222���"�� ���}!1AQa"q2���#B��R��$3br� 


Ik begrijp niet waarom ik dit krijg.
Krijg ook geen errors.
De code is:

?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);


$stamp = imagecreatefrompng('stampimg.png');
$im = imagecreatefromjpeg('flower.jpg');

$marge_right = 10;
$marge_bottom = 10;
$sx = imagesx($stamp);
$sy = imagesy($stamp);

$imgx = imagesx($im);
$imgy = imagesy($im);
$centerX=round($imgx/2);
$centerY=round($imgy/2);


imagecopy($im, $stamp, $centerX, $centerY, 0, 0, imagesx($stamp), imagesy($stamp));



 echo '<img src=" $im " alt=""> ';
 
imagejpeg($im); 
imagedestroy($im);
?>

<img src="<?php echo $im; ?>" alt=""> 


Hoe krijg ik de afbeelding te zien met het watermerk in de img tag?

alvast bedankt
Haal de header dan weg en roep image.php rechtstreeks aan en kijk wat voor foutmelding dit oplevert.

Je zult waarschijnlijk iets moeten doen met imagecopymerge() in plaats van simpelweg imagecopy() om een semi-doorzichtig watermerk te krijgen zoals in -letterlijk- het eerste Google resultaat wordt gedemonstreerd.

Je kunt niet simpelweg het ene plaatje kopiëren naar het andere plaatje als je wilt dat de "stampimg" doorzichtig is.
Robert Jansen op 18/10/2019 15:03:33

In image.php staat de code van mijn eerste bericht maar met
 header('Content-Type: image/png'); 
onder de
 imagecopy($im, $stamp, $centerX, $centerY, 0, 0, imagesx($stamp), imagesy($stamp)); 


Plaats je header eens helemaal bovenaan. En zorg voor geen enkele output (echo, print, return o.i.d.)

Toevoeging:
Getest en dit werkt hier prima
<?php
header('Content-Type: image/jpeg');

$stamp = imagecreatefrompng('https://www.bolster.nl/media/images/vlinder_klein.png';);
$im = imagecreatefromjpeg('https://www.bolster.nl/media/images/5450_dbweb.jpg';);

$marge_right = 10;
$marge_bottom = 10;
$sx = imagesx($stamp);
$sy = imagesy($stamp);

$imgx = imagesx($im);
$imgy = imagesy($im);
$centerX=round($imgx/2);
$centerY=round($imgy/2);


imagecopy($im, $stamp, $centerX, $centerY, 0, 0, imagesx($stamp), imagesy($stamp));

imagejpeg($im);
imagedestroy($im);
?>

Reageren