- Home
- Categorie
- Coding e Sistemistica
- PHP
- thumbnail e watermark di foto esistenti
-
thumbnail e watermark di foto esistenti
Ciao,
ho poca esperienza di php e nessuna delle librerie gd e spero di trovare aiuto.
Gestisco un sito di annunci utizzando uno script (non mio) che salva le foto creando (se non esiste) una cartella per ogni mese/anno e scrivendo nel database l'indirizzo della cartella e nome file (ad esempio 092007/29095055-686.jpg ma anche altri formati di file) con un nome campo da pic1 a pic 40.Attualmento ho più di 10000 iscritti, quasi tutti con foto.
Ora vorrei realizzare una funzione che realizzi su ogni foto passata:
- se non è stata fatta la marchiatura con il nome del sito
ne controlli le dimensioni e se siano superiori a diciamo 600 pixel di larghezza la ridimensioni senza perdere le proporzioni - salvi il nuovo file in formato jpeg con compressione da decidere nella stessa cartella
- realizzi la miniatura in 105 pixel di altezza per 90 di larghezza salvando in tutto in jpeg con compressione da decidere
Da dove si comincia????
- se non è stata fatta la marchiatura con il nome del sito
-
ciao mariog75 per il ridimenzionamento delle immagini basta calcolarti un lato della immagine in base ad un'altro lato impostato da te.
[php]
// mi ricavo le dimenzioni della immagine inizialmente
list($width, $height, $type, $attr) = getimagesize($cartella.$name_file);//calcolo le nueve dimenzioni
$y=105;
$x = $width * $y / $height;//e cosi ti calcoli l'altro lato della immagine che sarebbe in questo caso $x.
$thumb = imagecreatetruecolor(150,90); //Ritagli la immagine secondo la grandezza desiderata
$source = imagecreatefromjpeg($cartella.$name_file);
imagecopyresized($thumb, $source, 0, 0, 0, 0, $x, $y, $width, $height);imagejpeg($thumb, $cartella.$name_file, 75);//la compressione della immagine in questo caso è 75
imagedestroy($thumb);//libero la memoria[/php]
Queste sono tutte le funzioni che ti servono per fare quel lavoro adesso tocca a te sistemarle secondo quel che devi fare!!.
-
Salve ho usato lo script ma mi da il seguente errore
Warning: imagejpeg() Unable to open ______/immagini/dir_12/100_1xxxp.jpg' for writing: No such file or directory
Tenete conto che ho abilitato i permessi di dir_12 in scrittura
Ciao Piero