- Home
- Categorie
- Coding e Sistemistica
- PHP
- Ridimensionare immagini senza salvarle
-
Ridimensionare immagini senza salvarle
salve a tutti dovrei ridimensionare delle immagini (gif, jpg, png)che sono già presenti sul server ma non non devo salvarle
mi spiego devo creare un sistema per poter modificare le immagini e i dati ad esse associati
quindi l'idea è presentare queste immagini ridimensionate con i vari dati ed un pulsante modifica oppure eliminail problema è che non voglio salvare delle thumb sul server avete qualche cosa di pronto ?
io avevo pensato seguendo vari suggerimenti di fare una funzioncina cosi
function ridimensionaimg($nomefile,$percentuale,$tipofile){
$width_percent = $percentuale;if ($tipofile == "jpg") {
$im = @imagecreatefromjpeg($nomefile);
}
elseif ($tipofile == "gif") {
$im = @imagecreatefromgif($nomefile);
}
elseif ($tipofile == "png") {
$im = @imagecreatefrompng($nomefile);
}$width = imagesx($im); $height = imagesy($im); $new_width = $width * $width_percent; $new_height = ($new_width * $height) / $width; $im_resized = imagecreatetruecolor($new_width, $new_height); return imagecopyresampled($im_resized, $im, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
}
e di richiamarla cosi
ridimensionaimg($parametro, 0.1, exFile($valori['foto']));
ma non mi visualizza assolutamente nulla e non mi dà nemmeno errori
-
Se non vuoi salvarla puoi fare 2 cose:
- un php che crea l'immagine in memoria e la visualizza, quindi come il tuo e che finisce con qualcosa tipo:
[PHP]
header("Content-type: image/png");
imagepng($image);
imagedestroy ($image);
[/php]- visualizzare semplicemente l'immagine originale mettendo la dimensione che vuoi nel comando <img (chiaramente in questo caso la banda occupata è maggiore ma sfrutti meno cpu del server)