(gd) merge png en jpg geeft probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Vincent hagen

Vincent hagen

21/05/2009 11:19:00
Quote Anchor link
Hallo,
ik ben wat aan eht experimenteren met wat GD library codes en dan gaat het mij vooral om een watermerk an tebrengen op een plaatje. Maar het geeft een probleempje.

Met een GIF watermerkje gaat alles perfect, geen probleem alleen de kwaliteit stoort mij een beetje. Dus ik dacht laat ik het in png doen. Maar dan komt het er zo uit:
Afbeelding

Dit is uiteraard niet het gewenste resultaat want het watermerk is gewoon een schuinlopende tekst met wat effectjes erin gemaakt in photoshop.

Dit is mijn code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?PHP ini_set('display_errors', 1);

error_reporting(E_ALL);

$dest = imagecreatefromjpeg('test.jpg');
$src = imagecreatefrompng('watermerk2.png');


imagecopymerge($dest, $src, 0, 0, 0, 0, 500, 500, 70);

header('Content-Type: image/jpeg');
imagejpeg($dest);

imagedestroy($dest);
imagedestroy($src);

?>


kan iemand mij vertellen wat ik fout die?
Gewijzigd op 01/01/1970 01:00:00 door Vincent hagen
 
PHP hulp

PHP hulp

24/11/2024 22:48:59
 
Jesper Diovo

Jesper Diovo

21/05/2009 11:24:00
Quote Anchor link
Ik zou zorgen dat ze allebei van hetzelfde bestandstype zijn. Ik weet niet of het wat uithaalt; maar als je ze nu eens allebei naar wbmp omzet (jpeg2wbmp() en png2wbmp()) en dan met die wbmp weer iets doet waardoor het of png of jpeg wordt? (Geen idee of het kan, heb nl. bar weinig verstand van GD, maar het zou kunnen.)
 
Vincent hagen

Vincent hagen

21/05/2009 11:42:00
Quote Anchor link
nee dit wordt er niet beter op. Nu krijg ik dit:

Afbeelding

met de code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?PHP ini_set('display_errors', 1);

error_reporting(E_ALL);

png2wbmp('watermerk2.png', 'wbmp/watermerk2.wbmp', 500, 500, 7);
jpeg2wbmp('test.jpg', 'wbmp/test.wbmp', 500, 500, 7);

$dest = imagecreatefromwbmp('wbmp/test.wbmp');
$src = imagecreatefromwbmp('wbmp/watermerk2.wbmp');

// samenvoegen
imagecopymerge($dest, $src, 0, 0, 0, 0, 500, 500, 70);

// neerzetten
header('Content-Type: image/jpeg');

imagejpeg($dest);

imagedestroy($dest);
imagedestroy($src);

?>
Gewijzigd op 01/01/1970 01:00:00 door Vincent hagen
 
Vincent hagen

Vincent hagen

22/05/2009 23:20:00
Quote Anchor link
Sorry voor de dubbel post, maar kan iemand er nog naar kijken?
iemand enig idee?
 
Danny Roelofs

Danny Roelofs

22/05/2009 23:52:00
Quote Anchor link
Al eens gekeken? op http://nl.php.net/manual/en/function.imagecopymerge.php

Staan genoeg voorbeelden, ik vermoed dat het probleem ligt bij het niet gebruik maken van imagecreatetruecolor().
 
Vincent hagen

Vincent hagen

23/05/2009 15:34:00
Quote Anchor link
dankje, blijkbaar kan je png files niet gebruiken met imagecopymerge() en ik denk omdat dat komt doordat je een png niet transparant kan maken met de code, maar gewoon al in de png zelf.

Uiteindelijk moet je dus gewoon imagecopy() gebruiken, dan doet hij het wel
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.