Redimensionnement automatique d'images

Contenu du snippet

La création de miniatures est souvent synonyme de difficulté pour les codeurs débutants.
Sachant que j'en suis presque un, je me suis penché sur une fonction toute simple, qui ni ne crée pas d'image supplémentaire, ni n'utilise la librairie GD ; le bohneur quoi.

Cette fonction je l'utilise dans mon fichier fonction.inc.php que j'inclus sur toutes les pages donc la fonction doit être accessible au moins sur la page ou vous voullez afficher votre miniature...

Les paramètres sont les suivant :

- $img : chemin de l'image (uploads/avatars/image.gif)
- $w_max : Largeur maximale que vous envoyez sous forme de chiffre
- $h_max : Hauteur maximale

Sans plus tarder, voici le code.

EDIT : Calcul du rapport

Source / Exemple :


function redimenssion($img, $w_max, $h_max){

	$size_img = getimagesize($img);		// Dimensions de l'image de base
	
	$w_img = $size_img[0];				// Largeur de l'image de base
	$h_img = $size_img[1];				// Hauteur de l'image de base
	
	$rapport = $w_max / $w_img;		// Rapport
	
	$w_final = ceil($w_img * $rapport);		// Largeur miniature arrondie
	$h_final = ceil($h_img * $rapport);		// Hauteur miniature arrondie
	
	$size_final = array($w_final, $h_final);	// Mise en tableau des dimensions finales
	
	return $size_final;	// On retourne les dimensions de la miniature sous forme de tableau

}

$mini_img = redimenssion('uploads/avatars/image.gif', 100, 100);    // Appel de la fonctions

<img src="'.$img.'" width="'.$mini_img[0].'" height="'.$mini_img[1].'" alt="" />

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.