y'a-t'il des fonctions largeur/hauteur sur jpg ?

zedar
Invité n'ayant pas de compte PHPfrance

24 avr. 2006, 11:17

salut à tous, j'ai un script qui permet d'upload des photo pour les intégrer dans un système de news (upload+entrée dans une base mySQL)

le but est de mettre une photo à coté d'une news, dans un tableau comme suit :
ligne 1 (colspan=2) : titre de la news
ligne 2 : premiere case = contenu texte de la news, deuxième case = photo

il serait donc très génant d'avoir une photo trop grande, aussi bien en largeur qu'en hauteur.

la première idée qui m'est venu est d'imposer une taille fixe carrée dans la balise IMG, mais avec les photos rectangulaires, ca donne des photos déformées.

alors je pensais plutôt à utiliser des fonctions (en supposant qu'elles existent) qui calculent la hauteur et la largeur de l'image, pour pouvoir choisir une taille limite dans la balise IMG, qui ne déforme pas (ou peu) l'image.

exemple : si je veux que mon cadre ne dépasse pas 250x250 pixels, une photo 500x150 deviendrait 250x75 et non 250x250

donc la question est : existe-t'il une bibliothèque de fonctions qui permet d'obtenir les largeur et hauteur d'une image ?

ps: il ne s'agit pas de modifier le fichier image, mais seulement de re-dimensionner son affichage.

zedar
Invité n'ayant pas de compte PHPfrance

24 avr. 2006, 11:52

j'ai fini par trouver
getimagesize() retourne un tableau de 4 éléments. L'index 0 contient la largeur. L'index 1 contient la longueur. L'index 2 contient le type de l'image : 1 = GIF, 2 = JPG, 3 = PNG, 4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF (Ordre des octets Intel), 8 = TIFF (Ordre des octets Motorola), 9 = JPC, 10 = JP2, 11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF. Ces valeurs correspondent aux constantes IMAGETYPE qui ont été ajoutées en PHP 4.3. L'index 3 contient la chaîne à placer dans les balises IMG : height="xxx" width="yyy".