f

Get in on this viral marvel and start spreading that buzz! Buzzy was made for all up and coming modern publishers & magazines!

Fb. In. Tw. Be.
m

Cartoni.wiki

Script PHP per ridimensionare le immagini webP

La riduzione delle dimensioni delle immagini può contribuire a migliorare le prestazioni del caricamento delle pagine web, riducendo il tempo di caricamento complessivo.

Nello script php che segue, carichiamo un’immagine in formato WebP utilizzando imagecreatefromwebp() e otteniamo le sue dimensioni originali. Successivamente, calcoliamo le nuove dimensioni proporzionali per l’immagine ridimensionata in base alle dimensioni desiderate specificate. Creiamo un’immagine vuota con le nuove dimensioni utilizzando imagecreatetruecolor(), quindi ridimensioniamo l’immagine originale alla nuova dimensione utilizzando imagecopyresampled(). Infine, salviamo l’immagine ridimensionata in un nuovo file WebP utilizzando imagewebp()

<?php
// Percorso dell'immagine originale in formato WebP
$percorsoImmagineWebP = 'path/immagine.webp';

// Dimensioni desiderate per l'immagine ridimensionata
$larghezzaDesiderata = 800;
$altezzaDesiderata = 600;
// Crea un'immagine a partire dal file WebP
$immagine = imagecreatefromwebp($percorsoImmagineWebP);

// Ottieni le dimensioni dell'immagine originale
$larghezzaOriginale = imagesx($immagine);
$altezzaOriginale = imagesy($immagine);

// Calcola le nuove dimensioni proporzionali per l'immagine ridimensionata
$rapporoAspetto = $larghezzaOriginale / $altezzaOriginale;
if ($larghezzaDesiderata / $altezzaDesiderata > $rapporoAspetto) {
$larghezzaRidimensionata = $altezzaDesiderata * $rapporoAspetto;
$altezzaRidimensionata = $altezzaDesiderata;
} else {
$larghezzaRidimensionata = $larghezzaDesiderata;
$altezzaRidimensionata = $larghezzaDesiderata / $rapporoAspetto;
}

// Crea un'immagine vuota con le dimensioni ridimensionate
$immagineRidimensionata = imagecreatetruecolor($larghezzaRidimensionata,
$altezzaRidimensionata);

// Ridimensiona l'immagine originale alla nuova dimensione
imagecopyresampled($immagineRidimensionata, $immagine, 0, 0, 0, 0,
$larghezzaRidimensionata, $altezzaRidimensionata, $larghezzaOriginale,
$altezzaOriginale);

// Salva l'immagine ridimensionata in un nuovo file WebP
$percorsoImmagineRidimensionata = 'path/immagine_ridimensionata.webp';
imagewebp($immagineRidimensionata, $percorsoImmagineRidimensionata);

// Libera la memoria dalle immagini create
imagedestroy($immagine);
imagedestroy($immagineRidimensionata);

// Puoi utilizzare l'immagine ridimensionata come richiesto
// ...

?>

Spiegazione passo passo dello script per ridimensionare un’immagine in formato WebP utilizzando la libreria GD di PHP

  1. Definizione delle variabili:
    • Vengono definite le variabili per il percorso dell’immagine WebP originale ($percorsoImmagineWebP) e le dimensioni desiderate per l’immagine ridimensionata ($larghezzaDesiderata e $altezzaDesiderata).
  2. Creazione dell’immagine da file WebP:
    • Utilizzando la funzione imagecreatefromwebp(), viene creata un’immagine a partire dal file WebP specificato nel percorso.
  3. Ottenere le dimensioni dell’immagine originale:
    • Le dimensioni dell’immagine originale vengono ottenute utilizzando le funzioni imagesx() e imagesy(), che restituiscono rispettivamente la larghezza e l’altezza dell’immagine.
  4. Calcolo delle nuove dimensioni:
    • Viene calcolato il rapporto di aspetto dell’immagine originale dividendo la larghezza per l’altezza.
    • Utilizzando condizioni, vengono calcolate le nuove dimensioni proporzionali per l’immagine ridimensionata in base alle dimensioni desiderate. In questo modo, l’immagine conserverà le proporzioni originali.
  5. Creazione di un’immagine ridimensionata vuota:
    • Utilizzando la funzione imagecreatetruecolor(), viene creata un’immagine vuota con le nuove dimensioni calcolate.
  6. Ridimensionamento dell’immagine originale:
    • La funzione imagecopyresampled() viene utilizzata per ridimensionare l’immagine originale alla nuova dimensione. Questa funzione copia e ridimensiona l’immagine originale nell’immagine ridimensionata creata precedentemente.
  7. Salvataggio dell’immagine ridimensionata:
    • L’immagine ridimensionata viene salvata in un nuovo file WebP utilizzando la funzione imagewebp(). Verrà creato un nuovo file nel percorso specificato.
  8. Liberazione della memoria:
    • Dopo aver salvato l’immagine ridimensionata, è necessario liberare la memoria dalle immagini create utilizzando la funzione imagedestroy().

Puoi utilizzare l’immagine ridimensionata come richiesto nella tua applicazione. Assicurati di impostare correttamente i percorsi dei file e le dimensioni desiderate per ottenere i risultati desiderati.