Ciao, sto cercando il modo di sovrapporre 2 immagini in modo tale ke una (ke è un rettangolo smussato agli angoli e x il resto trasparente) mi funzioni da "bordo" di quella principale ke estraggo da un db.qualcuno ha idea di come fare?![]()
Ciao, sto cercando il modo di sovrapporre 2 immagini in modo tale ke una (ke è un rettangolo smussato agli angoli e x il resto trasparente) mi funzioni da "bordo" di quella principale ke estraggo da un db.qualcuno ha idea di come fare?![]()
E' la mia opinione ed io la condivido
Non condivido la tua idea ma darei la vita perché tu la possa esprimere (Voltaire)
Scrivi sul muro
ho già provato solo ke non mi riesce. io ho un'immagine ke può essere jpg o gif e "il bordo" in formato png (come suggerivano su php.net). probabilmente devono essere tutte e due dello stesso formato,o no? oppure il problema deriva dal fatto ke l'immagine jpg o gif deriva da una miniatura fatta al volo e pescata dal db? :master:
questo è un uso che ne faccio io per aggiungere un bordo e mettere un nome sotto l'immagine
codice:// $binary sono i dati dell'immagine nel db $name = "example"; $im = imagecreatefromstring($binary); $src = $im; $max_width = 70; $max_height = 70; $width = imagesx($src); $height = imagesy($src); $aspect_ratio = $width / $height; $dest_ratio = $max_width / $max_height; if ($dest_ratio > $aspect_ratio) { $new_height = $max_height; $new_width = $max_height * $aspect_ratio; } else { $new_width = $max_width; $new_height = $max_width / $aspect_ratio; } $new_width = $new_width >= strlen($name)*6 ? $new_width : strlen($name)*6; $im = imagecreatetruecolor($new_width+2, $new_height+15); imageAntiAlias($im, true); imagecopyresampled ($im, $src, 1, 1, 0, 0, $new_width, $new_height, $width, $height); $text_color = imagecolorallocate ($im, 255, 153, 0); imagestring($im, 2, 1, $new_height+2, $name, $text_color); header ("Content-type: image/png"); imagepng ($im); imagedestroy ($im);
E' la mia opinione ed io la condivido
Non condivido la tua idea ma darei la vita perché tu la possa esprimere (Voltaire)
Scrivi sul muro