Redimensionner une image sans distorsion

  Information

Fixer la taille d'une image dans un cadre en fonction des paramètres hauteur et largeur en gardant les proportions d'origines.

$fichier = chemin de la photo

$maxWidth = largeur max

$maxHeight= hauteur max

  code source classé dans  Images - Graphisme

 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
 17    
 18    
 19    
 20    
 21    
 22    
 23    
 24    
 25    
 26    
 27    
 28    
 29    
 30    
 31    
 32    
 33    
 34    
 35    
 36    
 37    
 38    
 39    
 40    
 41    
                               
<?php
/*---------------------------------------------------------------*/
/*
    Titre : Redimensionner une image sans distorsion                                                                      
                                                                                                                          
    URL   : https://phpsources.net/code_s.php?id=437
    Auteur           : philvert                                                                                           
    Date Ã©dition     : 23 Juil 2008                                                                                       
    Date mise Ã  jour : 19 Aout 2019                                                                                      
    Rapport de la maj:                                                                                                    
    - fonctionnement du code vérifié                                                                                
*/
/*---------------------------------------------------------------*/

    function Resize_picture($fichier,$maxWidth,$maxHeight)
    {
    # Passage des paramètres dans la table : imageinfo
    $imageinfogetimagesize("$fichier");
    $iw=$imageinfo[0];
    $ih=$imageinfo[1];
    # Paramètres : Largeur et Hauteur souhaiter $maxWidth, $maxHeight
    # Calcul des rapport de Largeur et de Hauteur
    $widthscale $iw/$maxWidth;
    $heightscale $ih/$maxHeight;
    $rapport $ih/$widthscale;
    # Calul des rapports Largeur et Hauteur Ã Â  afficher
    if($rapport $maxHeight)
        {$nwidth $maxWidth;}
     else
        {$nwidth $iw/$heightscale;}
     if($rapport $maxHeight)
        {$nheight $rapport;}
     else
        {$nheight $maxHeight;}

    # Affichage
    echo " <img src=$fichier width=\"$nwidth\" height=\"$nheight\">";
    }
?>

Exemple :

 
 01    
 02    
 03    
 04    
 05    
                                
<?php
    Resize_picture("img.jpg",10,10);
?>

          Fonctions du code - Doc officielle PHP

   php.net   Description Versions PHP OUTIL
   echo Affiche une chaîne de caractères PHP 4, PHP 5, PHP 7, PHP 8
   getimagesize Retourne la taille d'une image PHP 4, PHP 5, PHP 7, PHP 8

   Dites merci aux auteurs pour leurs travail, ça ne coûte rien et ça fait toujours plaisir wink

[1]

  • avatar

    Yelena4

    07 Fév 2010 à 21:24

    Merci beaucoup. J'ai réussi à le faire fonctionner. Nickel. Merci encore.


 Autres snippets qui pourraient vous intéressez

Redimensionner une image - PHP Sources

Compatibilité : PHP 5, PHP 7

Redimensionner une image automatiquement.

Redimensionner image en gardant les proportions - PHP Sources

Compatibilité : PHP 5, PHP 7

Ce script vous permet de redimensionner une image à la taille voulu. En cas de trop grande taille elle est redimensionner sans déformation avec un fond de couleur

Crée une constante sans erreur

Compatibilité : PHP 5, PHP 7

La bonne manière de créer une constante sans provoquer une erreur, voir les différentes erreurs à ne pas faire.

WordPress Breadcrumbs sans plugin

Compatibilité : PHP 5, PHP 7

PHP - Vous pouvez utiliser des plugins, mais de code de Breadcrumbs ( fil d'Ariane ) pourrait être une solution plus simple

Rediriger une URL sans le www vers une URL avec le www

Compatibilité : PHP 5, PHP 7

Redirige toute les URLs ne contenant pas le sous domaine 'www' vers des urls avec le 'www'. Gère tout un site si besoin.

Présentation de PHP

PHP débutant et initié 50 Tutoriel

Présentation de MySQL

avatar

Philvert

  23 Juil 2008

  SOURCE   Télécharger

Information sur les mises à jour

Dernière mise à jour :

    19 Aout 2019
    fonctionnement du code vérifié

12 687 Vues
Compatibilité
PHP 5, 7 et 8+
54 codes

Catégorie :  Images - Graphisme

Ajoute à votre image un cadre noir 3D
Ajouter un logo en filigrane (watermark) sur ses images
Composantes d'une image
concaténation d'images pour faire des sprites CSS
Connaitre la taille d'une image et son format
Créer une vignette avec GD en se basant sur le type d'image
Création d'images miniatures
Création d'images miniatures carrés
Crée des titres sympa
Créer des images fractales
Creer un camembert 2D facilement
Crop d'une image JPEG
Dessine un polygone régulier
Dessine un polygone regulier plein
Donne la couleur opposée d'une couleur
Ecrire des nombres dans une images, sans police
Ecrire un texte dans une image avec retour à la ligne automatique
Ecrire un texte dans une image PNG
Ecrire un texte sur une image - Code de base
Effet miroir sur des images
Effet solarisation
Egalisation des couleurs d'une image
Explorer et visionner des images dans un répertoire
Extrait un canal de couleur d'une image
Fabrication d'une vignette et sauvegarde de la vignette
Fonction hexadécimal vers RVB (RGB)
Fonctions imagecreatefrombmp et imagebmp
Générer une image aléatoire
GD/Graphiques
Homothétie d'une image
Image aléatoire
Image en noir et blanc
Image transparente
Images Miniatures
Ligne diagonale
Modifications des composantes
Photo du jour choisi de manière aléatoire à partir d'un répertoire
Redimensionne des images JPG et PNG
Redimensionner image en gardant les proportions
Redimensionner une image
Redimensionner une image sans distorsion
Regarde si l'image est présente sur le serveur
Représentation graphique
Rotation de triangle
Rotation image
Sélectionne et affiche la dernière image mise à jour
Sépia aspect ancien
Symétrie horizontale
Taille image maximum en pixels
Texte multi-lignes sur une image avec une police PostScript Type1
Texte ombré en police TrueType
Transparence simple sur une image
Un masque sur une image
Une galerie de photos automatique depuis un répertoire