Visualizzazione risultati 1 fino 10 di 10

Discussione: Modificare un'immagine con PHP

  1. #1
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Question Modificare un'immagine con PHP

    Ciao a tutti!
    Vorrei sapere come inserire del testo in un'immagine con PHP.
    --- TOLGO IL LINK PER EVITARE SPAM ---
    Grazie.
    Ultima modifica di radiodelmomento : 06-12-2011 alle ore 19.49.51

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,762

    Predefinito

    Devi usare la libreria GD.

    Su how-to ci sono anche delle guide (esempio).

    Ciao!

  3. #3
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Intanto grazie mille, le guide mi sono state molto d'aiuto.
    Ma non ho trovato come scrivere su un'immagine senza crearla, quindi mantenendo l'estensione .php.
    Grazie.

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,762

    Predefinito

    Dal topic che ti avevo linkato prima:
    Citazione Originalmente inviato da Leo91 Visualizza messaggio
    -Volendo utilizzare queste immagini in script di scambio di messaggi, come ad esempio i forum, per integrare una di queste immagini nella vostra firma oppure nel messaggio vero e proprio, non dovete sapere molto di più di quello che già avete imparato: vi basti sapere che le immagini possono avere anche l'estensione .php.
    Questo diventa possibile aggiungiendo in cima alla pagina questo codice:
    Codice PHP:
    <?php
    header
    ("Content-Type: image/jpeg");
    ?>
    Il quale fa capire che la pagina è in verità una immagine
    Ciao!

  5. #5
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    OK, ecco il codice della pagina.
    Codice PHP:
    <?php
    header
    ("Content-Type: image/jpeg");
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Prova PHP</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
    <?php
    $font
    = "ARIAL.TTF";//Font
    $ima = imagecreatefromjpeg("http://www.italiaunita150.it/media/60540/logo_big.jpg");//prendo l'immagine
    $textcol = imagecolorallocate($ima,0,0,0);//Prendo il colore nero per il testo
    list($larg, $altez, $uno, $due) = getimagesize("http://www.italiaunita150.it/media/60540/logo_big.jpg"); //Metto nelle variabili $larg e $altez la larghezza e l'altezza dell'immagine con l'array getimagesize()
    imagettftext($ima,15,0,$larg-30,$altez-50,$textcol,$font, "TESTO!");
    imagepng($ima,"prova.php");//trasformo, per comodità mia, l'immagine in nuova.png e la scrivo
    echo "<img src=\"prova.php\">";
    imagedestroy($ima);
    ?>
    </body>
    </html>
    Adesso non posso vedere la sorgente, quindi è diventata un'immagine, ma la pagina resta bianca.
    Domandina: si potrebbe evitare di inserire la font?
    Grazie, ciao!
    Ultima modifica di radiodelmomento : 07-12-2011 alle ore 18.17.04

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,762

    Predefinito

    Codice PHP:
    <?php
    $font
    = "ARIAL.TTF";//Font
    $ima = imagecreatefromjpeg("http://www.italiaunita150.it/media/60540/logo_big.jpg");//prendo l'immagine
    $textcol = imagecolorallocate($ima,0,0,0);//Prendo il colore nero per il testo
    list($larg, $altez, $uno, $due) = getimagesize("http://www.italiaunita150.it/media/60540/logo_big.jpg"); //Metto nelle variabili $larg e $altez la larghezza e l'altezza dell'immagine con l'array getimagesize()
    imagettftext($ima,15,0,$larg-30,$altez-50,$textcol,$font, "TESTO!");
    imagepng($ima,"prova.php");//trasformo, per comodità mia, l'immagine in nuova.png e la scrivo
    header("Content-Type: image/png");
    imagepng($ima);
    ?>
    Risultato, anche se non ho capito la parte del file "prova.php"...

    Ciao!
    Ultima modifica di alemoppo : 07-12-2011 alle ore 18.32.51

  7. #7
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Quello è il codice di tutta la pagina?
    Quindi non dovrei inserire altro?
    Se è così allora devo modificare qualche impostazione, perché continua a comparire la pagina bianca.

  8. #8
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,762

    Predefinito

    Forse, prelevare in un'immagine da un sito esterno richiede la connessione server2server.

    Ciao!

  9. #9
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Esatto, ho provato con un'immagine locale e funziona.
    Grazie mille.

  10. #10
    L'avatar di radiodelmomento
    radiodelmomento non è connesso AlterGuru
    Data registrazione
    09-09-2010
    Messaggi
    1,075

    Predefinito

    Ciao!
    Ho provato a ridimensionare un'immagine e ci sono riuscito, ma la qualità è molto scadente.
    Non si potrebbe migliorare o è il massimo?
    Codice PHP:
    <?php
    $file
    = $_GET['file'];
    $width = 80; //larghezza immagine ridimensionata
    $height = 80; //altezza immagine ridimensionata

    if(strstr($file,"jpg")){
    $new_image = imagecreatetruecolor($width, $height);
    $src_image = imagecreatefromjpeg($file);

    imagecopyresized($new_image, $src_image, 0, 0, 0, 0, $width, $height, imagesx($src_image), imagesy($src_image));

    header('Content-type: image/jpeg');
    imagejpeg($new_image);
    }



    if(
    strstr($file,"gif")){
    $new_image = imagecreatetruecolor($width, $height);
    $src_image = imagecreatefromgif($file);

    imagecopyresized($new_image, $src_image, 0, 0, 0, 0, $width, $height, imagesx($src_image), imagesy($src_image));

    header('Content-type: image/gif');
    imagegif($new_image);
    }



    if(
    strstr($file,"png")){
    $new_image = imagecreatetruecolor($width, $height);
    $src_image = imagecreatefrompng($file);

    imagecopyresized($new_image, $src_image, 0, 0, 0, 0, $width, $height, imagesx($src_image), imagesy($src_image));

    header('Content-type: image/png');
    imagejpeg($new_image);
    }

    ?>
    Grazie!

    P. S.: server2server è attivo senza restrizioni.
    P. P. S.: dopo 10 giorni non è riesumazione, giusto? E nemmeno UP, visto che non c'è più il tasto "Edit".
    Ultima modifica di radiodelmomento : 17-12-2011 alle ore 18.27.17

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •