Se un utente carica un immagine jpeg di dimenzioni oltre i 100Kb sul mio server voglio che questa venga compressa.
Con le librerie gd come si fà?
Grazie
Se un utente carica un immagine jpeg di dimenzioni oltre i 100Kb sul mio server voglio che questa venga compressa.
Con le librerie gd come si fà?
Grazie
risposta lampo: "comprimerla" come dimensioni significa lasciare invariata la risoluzione (WxH pixel) ma aumentare il fattore di compressione di codifica in jpg. Se questo è ciò che vuoi non saprei come aiutarti se non dicendoti di guardare su www.php.net
Altrimenti puoi "ridimensionare" l'immagine con le funzioni
- imagecopyresized(....)
- imagecopyresampled(....)
Queste funzioni (entrambe) prendono un'immagine di dimensioni WxH pixel e te la trasformano in una nuova immagine W1xH1 pixel, con W1 e H1 stabiliti da te. La differenza fra le due è che la prima è più veloce con qualità finale un po' inferiore, la seconda invece è un po' più lenta ma la qualità dell'immagine finale è maggiore. Non ti so dire cosa cambi sulle dimensioni del file finale utilizzando una funzione piuttosto che un'altra. Se ciò che vuoi è un "ridimensionamento dell'immagine condizionato alla dimensione del file finale" credo che non ci sia modo di sapere in anteprima quanto pesa il file che vai a creare, a causa della non-linearità dell'algoritmo di compressione.
Per ulteriori dettagli ti rimando sempre a www.php.net nello spazio relativo alle funzioni che ti ho citato sopra, troverai numerosi esempi