• User Attivo

    Watermark su foto già esistente

    Ciao a tutti, ho uno script che carica un'immagine e la ridimensiona, vorrei sapere come posso fare per applicare ad essa un watermark.

    Posto il codice che si occupa dell'upload dell'immagine:
    [PHP]
    if($uploadedfile <> "none") {

    $finale = $_POST["nome_foto"];
    $uploadedfile_name = $finale . ".jpg";
    $percorso = $_FILES['uploadedfile']['tmp_name'];
    if(!move_uploaded_file($percorso, "foto/" . $uploadedfile_name))
    }

    $fullsize = @imagecreatefromjpeg("foto/" . $uploadedfile_name);
    $fullsize_height = @imagesy($fullsize);
    $fullsize_width = @imagesx($fullsize);

    list($larg, $alt) = @getimagesize("foto/" . $uploadedfile_name);
    if($larg > 700) $thumb_width = 700; else $thumb_width = $larg;

    $thumb_height = @floor($fullsize_height/($fullsize_width/$thumb_width));
    $thumb = @imagecreatetruecolor($thumb_width,$thumb_height);
    @imagecopyresampled($thumb,$fullsize,0,0,0,0,$thumb_width,$thumb_height,$fullsize_width,$fullsize_height);
    @imagedestroy($fullsize);
    @imagejpeg($thumb, "foto/" . $uploadedfile_name);
    @imagedestroy($thumb);
    if($flag == 0) $path = "foto/" . $uploadedfile_name; else $path = "";
    [/PHP]


  • User Attivo

    Ciao mariolone,
    ti conviene giocare con il comando imagettftext (http://it.php.net/imagettftext), delle librerie gd, fatto apposta per scrivere testo su immagine, regolandone il font, le dimensioni, il colore, e l'orientamento, se non ricordo male...

    Una possibile logica è quella di creare la scritta su un'immagine trasparente delle stesse dimensioni dell'immagine originale (***imagecolortransparent ***http://it.php.net/manual/it/function.imagecolortransparent.php)
    e poi giocando con imagecopymerge (http://it.php.net/manual/it/function.imagecopymerge.php) copi l'immagine testo sull'immagine iniziale regolando l'ultimo paramentro di imagecopymerge per il grado di trasparenza voluto.

    E' più facile a farsi che a dirsi...;)

    Se fai qualcosa postalo qui, che magari potremo creare un tutorial!
    :ciauz: