Come creare JPG miniature con PHP

September 17

Una miniatura è una copia di un'immagine che è stata ridotta in proporzione a piccole dimensioni in modo che un utente può visualizzare più immagini sullo stesso schermo ed essere ancora in grado di avere un'idea di ciò che ogni immagine appare come se visto nella sua dimensione originale. Se la vostra versione di PHP è configurato con il supporto per la libreria GD, è possibile utilizzare le numerose funzioni integrate per creare un'immagine da un file JPG, ridurne le dimensioni e salvarlo come una miniatura.

istruzione

1 Scrivere una funzione per creare le miniature. Prendere tre parametri alla funzione: il percorso in cui sono memorizzati i file di immagine, il percorso in cui devono essere memorizzati i file di anteprima e la larghezza della miniatura. Ad esempio, digitare:

<? Php

create_thumbnails funzione ($ percorso_immagine, $ thumb_path, $ thumb_width) {

2 Aprire la directory in cui sono memorizzati i file di immagine. Aprire un ciclo per leggere ogni file nella directory, controllare per assicurarsi che sia un file JPG e poi elaborarlo. Ad esempio, digitare:

while (($file = readdir($directory))) {

$ File_info = pathinfo ($ percorso_immagine, $ file);

if (strtolower ($ file_info [ "estensione"]) == "jpg") {

echo "Conversione". $ File_immagine. "Alla miniatura";

3 Conservare il percorso dell'immagine e il nome del file e il percorso delle miniature e il nome del file per le variabili per l'immagine in fase di elaborazione nel ciclo. Ad esempio, digitare:

$image_file = $image_path . $file;

$ Thumb_file = $ thumb_path. $ File;

4 Creare una nuova immagine dal file di immagine utilizzando la funzione imagecreatefromjpeg e ottenere la larghezza corrente e l'altezza dell'immagine. Ad esempio, digitare:

$image = imagecreatefromjpeg($image_file);

$ Width = imagesx ($ image);

$ Height = imagesy ($ image);

5 Calcolare l'altezza della miniatura in base alla larghezza della miniatura passato come parametro alla funzione e mantenendo le dimensioni proporzionali. Ad esempio, digitare:

$new_height = floor($height * ($thumb_width / $width));

6 Creare un'immagine temporanea. Copiare l'immagine in immagine temporaneo a partire dalle coordinate 0,0,0,0 e il ridimensionamento dell'immagine in base alla larghezza corrente, la larghezza delle miniature, altezza corrente e l'altezza delle miniature. Ad esempio, digitare:

$temp = imagecreatetruecolor($thumb_width, $new_height);

imagecopyresized ($ temp, $ image, 0, 0, 0, 0, $ thumb_width, $ new_height, $ larghezza, altezza $);

7 Salvare la miniatura nella cartella delle miniature. Ad esempio, digitare:

imagejpeg($temp, $thumb_file);

8 Genera un messaggio di errore se il file di immagine non era un file JPG. Termina il ciclo e chiudere la directory aperta di immagini quando fatto. Ad esempio, digitare:

}

altro {

echo $ file_immagine. "Non è una immagine JPG!";

}

}

closedir ($ directory);

}

9 Chiamare la funzione con i parametri appropriati per eseguire la conversione. Ad esempio, digitare:

create_thumbnails ( "/ home / steve / immagini /", "/ home / steve / pollice /", 100);

?>

Consigli e avvertenze

  • La versione di PHP deve avere il supporto GD ha permesso di usare queste funzioni.