J'aimerais savoir si il est possible d'ajouter à ma fonction d'upload d'image (qui fonctionne très bien),
Une fonction qui permettrais de réduire la taille de mon image sans perdre trop de qualité.
Car j'affiche plusieurs images sur une même page et même avec du lazyloading cela met du temps a charger à cause de la taille des images (il peut en avoire plus de 200).
Merci d'avance
Et bonne année à tous !
Edit : J'ai trouvé une fonction qui permet de recréer une image en modifiant la qualité et donc la taille :
function compressedImage($source, $path, $quality) {
$info = getimagesize($source);
if ($info['mime'] == 'image/jpeg')
$image = imagecreatefromjpeg($source);
elseif ($info['mime'] == 'image/gif')
$image = imagecreatefromgif($source);
elseif ($info['mime'] == 'image/png')
$image = imagecreatefrompng($source);
// création de l'image
return imagejpeg($image, $path, $quality);
}
Cela marche comme je le voulais.
- Edité par Monsieur_Toad 15 janvier 2020 à 2:53:39
Un Anneau pour les gouverner tous, un Anneau pour les trouver, un Anneau pour les amener tous et dans les ténèbres les lier
Je peux te conseiller d'utiliser la librairie Glide qui permet de modifier la taille et le poids de l'image dans les paramètres d'appel à un script PHP.
Ceci te permet de faire un design sur ta page html responsive et de charger automatiquement la bonne taille d'image en fonction du device sans créer toi-même une multitude d'image préalablement avec un script.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Un Anneau pour les gouverner tous, un Anneau pour les trouver, un Anneau pour les amener tous et dans les ténèbres les lier