Aller au contenu

redimensionner des images sur le serveur


blast

Sujets conseillés

Bonjour,

J'ai un immense stock d'images sur un serveur (env. 1Go) qui ont tous les poids possibles. Certaines font jusqu'à 3mo, d'autres sont plus light.

J'aimerais toutes les alléger pour pouvoir les employer pour un site web. Existe-t-il un script capable de redimensionner/alléger les images directement sur le serveur à votre connaissance ? Je ne désire pas les rapatrier sur mon PC pour le faire.

Merci de votre aide

Blast

Lien vers le commentaire
Partager sur d’autres sites

merci beaucoup de ta réponse. Malgré cette piste, je ne parviens pas à trouver un script qui me ferait cette manipulation efficacement (proportions gardées). Et je n'ai pas les compétences pour en créer un. Merci de vos conseils.

Lien vers le commentaire
Partager sur d’autres sites

Allez, cadeau de la maison

<?php
function generer_miniature($image, $rep_source,$rep_dest,$largeur, $hauteur, $qualite) {
// chemin de la miniature à générer
$dest = $rep_dest.$image;
$dest_rep=substr($rep_dest,0,strrpos($rep_dest,"/"));
if ((!file_exists($dest_rep)) && (!is_dir($dest_rep)))
{mkdir ($dest_rep, 0705);
if ((!file_exists($dest_rep)) && (!is_dir($dest_rep)))
echo "<p>Erreur lors de la création du répertoire $dest_rep</p>\n";
}

$img_in = imagecreatefromjpeg($rep_source.$image);
$size = getimagesize($rep_source.$image);
$l = $size[0];$h = $size[1];

$ratio=max($h/$hauteur,$l/$largeur);
$new_haut =$h /$ratio;$new_larg =$l /$ratio;

// on réduit l'image à la largeur voulue, mais en gardant la hauteur proportionnelle
$img_out = ImageCreateTruecolor($new_larg, $new_haut);
ImageCopyResampled($img_out, $img_in, 0, 0, 0, 0, ImagesX($img_out), ImagesY($img_out), $l, $h);

// création d'une image vide aux dimensions de la miniature
$im = ImageCreateTruecolor($new_larg, $new_haut);

// on copie la zone de l'image de hauteur voulue dans l'image vide
ImageCopy($im, $img_out, 0, 0, 0, 0, $new_larg, $new_haut);
ImageJpeg($im, $dest, $qualite);

// destruction des images en mémoire
ImageDestroy($img_out);
ImageDestroy($im);
}
?>

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...