ciao a tutti,
sto cercando di scrivermi una classe per gestire le immagini e ho un problema con una funzione, quella per creare l'effetto filigrana. Ve la riporto:
Codice PHP:
public function watermark($logo_path,$opacity=100,$x=0,$y=0){
    if(!
is_numeric($opacity)||!is_numeric($x)||!is_numeric($y))
        return 
"001";
    if(!
file_exists($logo_path))
        return 
"005";
    if(!
$this->isPng($logo_path))
        return 
"006";
    if(
$watermarked=imagecreatetruecolor($this->original_width,$this->original_height)){
        
imagecopymerge($watermarked,$wmk,$x,$y,0,0,$w_w,$w_h,$opacity);
        
$org=imagecreatefromjpeg($this->path);
        
$wmk=imagecreatefrompng($logo_path);
        list(
$w_w,$w_h)=getimagesize($logo_path);
        
imagecopy($watermarked,$org,0,0,0,0,$this->original_width,$this->original_height);
        
imagealphablending($watermarked,true);
        return 
$watermarked;
    }else{
        return 
"002";
    }

il problema non ve lo sto neanche a spiegare, vi linko le immagini sorgente e il risultato il che dovrebbe ampiamente bastare per capire che così proprio non va!

Immagine di partenza
PNG trasparente da sovrapporre
Risultato finale :S

qualcuno sarebbe così gentile da aiutarmi a trovare una soluzione al problema?

grazie in anticipo!!