Ridimensionamento Anomalo

Salve sto studiando come posso ridimensionare un'immagine, ho utilizzato questo codice ma non funziona

            <?php
            // The file
            $filename = 'images/warning.jpg';
            $percent = 0.5;
            // Content type
            header('Content-type: image/jpeg');
            // Get new dimensions
            list($width, $height) = getimagesize($filename);
            $new_width = $width * $percent;
            $new_height = $height * $percent;
            // Resample
            $image_p = imagecreatetruecolor($new_width, $new_height);
            $image = imagecreatefromjpeg($filename);
            imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
            // Output
            imagejpeg($image_p, null, 100);
            ?>

vorrei sapere, come mai mi scrive la url invece dell'immagine?

inviato 8 anni fa
EKELON77
X 0 X

hai provato a richiamare questo script direttamente dal browser?

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

yes e mi scrive la url come imagine jpg forse manca il tag img ci vuole? :crazy:

risposto 8 anni fa
EKELON77
X 0 X

sposta la funzione    

header('Content-type: image/jpeg');

come penultima funzione dello script.

Cosa vedi adesso?

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

 :tichedoff: no purtroppo come prima :-(

scusa non è che deve avere una versione php superiore alla 4.x e deve stare dentro un tag imgc come questo example: <?php list($width, $height, $type, $attr) = getimagesize("img/flag.jpg"); echo "<img src=\"img/flag.jpg\" $attr alt=\"getimagesize() example\" />"; ?>  ;)

risposto 8 anni fa
EKELON77
modificato 8 anni fa
X 0 X

Il tag non serve, poiché quello script deve generare l'immagine (il file) mentre il tag va incluso nella pagina HTML che accoglie l'immagine. Il tag quindi è il segnaposto, la cornice, che accoglie il disegno, il tuo script invece ha il compito di generare il disegno.

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

 :dunno: non ho capito mi puoi fare un esempio ?  :crazy:

risposto 8 anni fa
EKELON77
X 0 X

Il tag non serve, poiché quello script deve generare l'immagine (il file) mentre il tag va incluso nella pagina HTML che accoglie l'immagine. Il tag quindi è il segnaposto, la cornice, che accoglie il disegno, il tuo script invece ha il compito di generare il disegno.

 :bye:

quindi devo creare due script questo crea e invece poi devo utilizzare il tag img per accogliere l'immaggine appena creata?

risposto 8 anni fa
EKELON77
X 0 X

Si  :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Gianni grazie per avermi risposto ancora ma mi occorerebbe un esempio.

risposto 8 anni fa
EKELON77
X 0 X

pagina_principale.php

...
<img src="http://miosito.it/genera_immagine.php">
...

genera_immagine.php

<?php
header('Content-type: image/jpeg');
...
?>

 :bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Ciao

ho fatto come hai detto ti posto il codice dei due files:

Genera_Immagine

<?php
   // Content type
   header('Content-type: image/jpeg');
   // The file
   $url = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
   $filename = $url.'images/logoent.gif';
   //$percent = 0.5;
   // Get new dimensions
   list($larghezza_orig, $altezza_orig) = getimagesize($filename);
   $new_larghezza = 48;
   $new_altezza = 48;
   // Resample
   $image_send = imagecreatetruecolor($new_larghezza, $new_altrezza);
   $image = imagecreatefromjpeg($filename);
   imagecopyresampled($image_send, $image, 0, 0, 0, 0, $new_larghezza, $new_altezza, $larghezza, $altezza);
   // Output
   imagejpeg($image_send, null, 100);
   ?>

e poi la pagina che richiamo:                                                                               <?                                                                            $url = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];                                                                           $script = "php/genera_immagine.php";                                                                           $genera = $url.$script;                                                                              echo "<img src=\"$genera\"/>";                                                                           ?> ciao spero che questo ti sia utile per capire perchè crea un img dell'url dello script chiamante? :bye:

                                                                                                                                 

risposto 8 anni fa
EKELON77
X 0 X

Alla funzione getimagesize passi l'URL dell'immagine originale ma forse sarebbe meglio passargli il percorso sul server dell'immagine.

Hai potuto verificare in qualche modo se $larghezza_orig e $altezza_orig valgono realmente le dimensioni dell'immagine?

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

yes, questo è il codice completo nn funzionante:

<?
   // Content type
   header('Content-type: image/jpeg');
   // The file
   $filename = '../images/logoent.gif';
   //$percent = 0.5;
   // Get new dimensions
   list($larghezza_orig, $altezza_orig) = getimagesize($filename);
   $new_larghezza = 32;
   $new_altezza = 32;
   // Resample
   $image_send = imagecreatetruecolor($new_larghezza, $new_altrezza);
   $image = imagecreatefromjpeg($filename);
   //imagecopyresampled($image_send, $image, 0, 0, 0, 0, $new_larghezza, $new_altezza, $larghezza, $altezza);
   // Output
   imagejpeg($image_send, null, 100);
   ?>

se estrapolo delle righe di codice e faccio questo esempio:

<?
   $filename = '../images/logoent.gif';
   list($larghezza_orig, $altezza_orig) = getimagesize($filename);
   echo $larghezza_orig."-".$altezza_orig;
?>

che altri test posso fare?  ;)

risposto 8 anni fa
EKELON77
X 0 X

Gianni come posso procedere nn funziona  :'(?

risposto 8 anni fa
EKELON77
X 0 X

Si le altezze orginali sono OK

risposto 8 anni fa
EKELON77
X 0 X

Mi stampa la url come immagine  :'(,

codice postato: genera_immagine.php:

<?
   // The file
   $filename = ''.$Path.'images/logo.gif';
   //$percent = 0.5;
   // Get new dimensions
   list($larghezza_orig, $altezza_orig) = getimagesize($filename);
   $new_larghezza = 32;
   $new_altezza = 32;
   // Resample
   $image_send = imagecreatetruecolor($new_larghezza, $new_altrezza);
   $image = imagecreatefromjpeg($filename);
   imagecopyresampled($image_send, $image, 0, 0, 0, 0, $new_larghezza, $new_altezza, $larghezza, $altezza);
   // Content type
   header('Content-type: image/jpeg');
   // Output
   imagejpeg($image_send, null, 100);
   ?>

qualche suggerimento :lamo: :giveup: :wallbash:

risposto 8 anni fa
EKELON77
X 0 X

Giovanni ho fatto qualche progresso ma mi devi dare una mano,

<?
   include_once ('./includephp/include_session.php');
   // The file
   $url = 'images/logo.gif';
   $filename = $Path.$url;
   //$percent = 0.5;
   // Get new dimensions
   list($larghezza_orig, $altezza_orig) = getimagesize($filename);
   $new_larghezza = 32;
   $new_altezza = 32;
   // Resample
   $image_send = imagecreatetruecolor($new_larghezza, $new_altrezza);
   $image = imagecreatefromgif($filename);
   imagecopyresampled($image_send, $image, 0, 0, 0, 0, $new_larghezza, $new_altezza, $larghezza, $altezza);
   // Content type
   header('Content-type: image/jpeg');
   // Output
   imagepng($filename);   
   ?>

adesso mi crea l'immagine dell'url come img jpg come mai?

risposto 8 anni fa
EKELON77
X 0 X

Giovanni ho fatto qualche progresso ma mi puoi gentilmente dare una mano,

<?
   include_once ('./includephp/include_session.php');
   // The file
   $url = 'images/logo.gif';
   $filename = $Path.$url;
   //$percent = 0.5;
   // Get new dimensions
   list($larghezza_orig, $altezza_orig) = getimagesize($filename);
   $new_larghezza = 32;
   $new_altezza = 32;
   // Resample
   $image_send = imagecreatetruecolor($new_larghezza, $new_altrezza);
   $image = imagecreatefromgif($filename);
   imagecopyresampled($image_send, $image, 0, 0, 0, 0, $new_larghezza, $new_altezza, $larghezza, $altezza);
   // Content type
   header('Content-type: image/jpeg');
   // Output
   imagepng($filename);   
   ?>
adesso mi crea l'immagine dell'url come img jpg come mai?

volevo comunicarvi che a questo indirizzo: http://egaweb.altervista.org/ dove mi vine visualizzato l'immagine?

P.S.: Penso di averlo già scritto nei topic precedenti sono in  :giveup:

risposto 8 anni fa
EKELON77
modificato 8 anni fa
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda