Redimension image

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Redimension image

Re: Redimension image

par Calimero » 24 juil. 2012, 16:50

Plus d'infos (qui peuvent conduire à une solution php) ici, en anglais : http://www.impulseadventure.com/photo/e ... ation.html

C'est un champ exif, semble t-il.

Re: Redimension image

par Smeloh » 24 juil. 2012, 14:59

Comment est-ce que ça se gère ?

Re: Redimension image

par xTG » 24 juil. 2012, 13:01

Une idée d'où ça peut provenir ?
Des informations de l'image.

Re: Redimension image

par Smeloh » 24 juil. 2012, 12:36

Une idée d'où ça peut provenir ?

Re: Redimension image

par Calimero » 24 juil. 2012, 12:12

A ma connaissance, GD ne gère pas l'indication portrait/paysage, qui est une information présente au niveau du fichier. Toutes les images sont donc manipulées sans tenir compte de cette donnée, ce qui explique la différence avec ce que tu vois quand tu manipules les images dans un autre logiciel. En tout cas ça ne vient pas de ton code :)

Re: Redimension image

par smeloh » 24 juil. 2012, 11:23

Je ne sais pas, mais toutes mes images dont la largeur est inférieur à la hauteur subissent une rotation de 90° horaires.

Qu'entends-tu par mauvaise dimension ?

Re: Redimension image

par AB » 23 juil. 2012, 20:09


Mon pb c'est qu'une rotation se fait pour les images portrait. Et j'aimerais que cette rotation ne s'opère pas.
Il y a réellement une rotation de l'image ou une mauvaise dimension ?

Redimension image

par Smeloh » 23 juil. 2012, 17:15

Bonjour,

Petit soucis sur un script de redimension d'image. Je l'ai parcouru dans tous les sens, je pense être proche de la solution, mais je sèche vraiment là ...

Pour résumer, il me permet d'uploader des images dans ma galerie (une initiale, une moyenne et une miniature). L'image est donc déclinée 3 fois.
Dans cette galerie j'upload des images portraits et paysages (h>l et l>h).

Mon pb c'est qu'une rotation se fait pour les images portrait. Et j'aimerais que cette rotation ne s'opère pas.

Je pense que ça situe là où je calcule le ration entre la taille initiale et la miniature, mais je ne suis pas sûr.

Code : Tout sélectionner

<?php if (!empty($_POST['InsererNews'])) { $ListeExtension = array('jpg' => 'image/jpeg', 'jpeg'=>'image/jpeg'); $ListeExtensionIE = array('jpg' => 'image/pjpeg', 'jpeg'=>'image/pjpeg'); if (!empty($_POST['TitreNews']) && (!empty($_FILES['ImageNews']))) { $TitreNews = $_POST['TitreNews']; $ContenuNews = $_POST['ContenuNews']; if ($_FILES['ImageNews']['error'] <= 0) { if ($_FILES['ImageNews']['size'] <= 2097152) { $ImageNews = $_FILES['ImageNews']['name']; $ExtensionPresumee = explode('.', $ImageNews); $ExtensionPresumee = strtolower($ExtensionPresumee[count($ExtensionPresumee)-1]); if ($ExtensionPresumee == 'jpg' || $ExtensionPresumee == 'jpeg') { $ImageNews = getimagesize($_FILES['ImageNews']['tmp_name']); if($ImageNews['mime'] == $ListeExtension[$ExtensionPresumee] || $ImageNews['mime'] == $ListeExtensionIE[$ExtensionPresumee]) { $ImageChoisie = imagecreatefromjpeg($_FILES['ImageNews']['tmp_name']); $TailleImageChoisie = getimagesize($_FILES['ImageNews']['tmp_name']); $NouvelleLargeur = 180; //Largeur choisie à 350 px mais modifiable $reduc = $NouvelleLargeur / $TailleImageChoisie[0]; $NouvelleHauteur = ( ($TailleImageChoisie[1] * $reduc )); $NouvelleImage = imagecreatetruecolor($NouvelleLargeur , $NouvelleHauteur) or die ("Erreur"); $NouvelleLargeur2 = 400; //Largeur choisie à 350 px mais modifiable $NouvelleHauteur2 = ( ($TailleImageChoisie[1] * (($NouvelleLargeur2)/$TailleImageChoisie[0])) ); $NouvelleImage2 = imagecreatetruecolor($NouvelleLargeur2 , $NouvelleHauteur2) or die ("Erreur"); imagecopyresampled($NouvelleImage2 , $ImageChoisie , 0,0, 0,0, $NouvelleLargeur2, $NouvelleHauteur2, $TailleImageChoisie[0],$TailleImageChoisie[1]); imagecopyresampled($NouvelleImage , $ImageChoisie , 0,0, 0,0, $NouvelleLargeur, $NouvelleHauteur, $TailleImageChoisie[0],$TailleImageChoisie[1]); $NomImageChoisie = explode('.', $ImageNews); $NomImageExploitable = time(); //Enregistrement de l'image initiale : imagejpeg($NouvelleImage2 , '../images/'.$NomImageExploitable.'FullImage.'.$ExtensionPresumee, 100); $LienImageFull = 'images/'.$NomImageExploitable.'FullImage.'.$ExtensionPresumee; imagejpeg($NouvelleImage , '../images/'.$NomImageExploitable.'.'.$ExtensionPresumee, 100); $LienImageNews = 'images/'.$NomImageExploitable.'.'.$ExtensionPresumee; $req = $bdd->query('INSERT INTO galerie VALUES ("", "'.$TitreNews.'", "'.$LienImageNews.'", "'.$LienImageFull.'")') or die(mysql_error()); if ($req) { echo '<div class="message2">La news a bien été insérée<br /><br /><a href="upload.php">Retourner à la page précédente</a></div>'; } } else { echo 'Le type MIME de l\'image n\'est pas bon'; } } else { echo 'L\'extension choisie pour l\'image est incorrecte'; } } else { echo 'L\'image est trop lourde'; } } else { echo 'Erreur lors de l\'upload image'; } } else { echo 'Au moins un des champs est vide'; } } ?>
Merci ;)