j ai essayé avec la fonction trace mais rien ne s affiche....
alors voila je met la source complete et si quelque trouve la solution se serait super cool :)
tout ce que je veux c est reussir a creer un slideshow avec les photos qui se chargent de maniere dynamique et se placent l une a coté de l autre sur un axe horizontal sans avoir de restriction au niveau des largeurs de fichiers ...
c est loin d etre fini mais pour avancer il faudrait deja que j arrive a resoudre ce probleme de placement....
HEEEEEEEEEELP!
fichier getImgList.php :
<?php
//Les répertoires
$rep_imgs = "./images";
$rep_mini = "./mini";
//Les dimensions max des miniatures
$width_mini = 300;
$height_mini = 400;
//La variable renvoyer à flash
$retour="<racine>";
//On ouvre le dossier
$rep=opendir($rep_imgs);
/*Expression régulière pour identifier les fichiers jpg ou jpeg quelque soit leur casse */
$regex="#[-_a-z0-9]+.jp[e]?g#i";
//On parcours tous les fichiers
while ($file = readdir($rep)){
//Si c'est un jpg
if(preg_match($regex, $file)){
//On copie l'image
$src_img = imagecreatefromjpeg("$rep_imgs/$file");
//Si la miniature n'existe pas
if(!file_exists("$rep_mini/$file")){
//On cherhe la plus grande dimension
if(imagesx($src_img) > imagesy($src_img)){
//On calcul la proportion
$proportion = $width_mini/imagesx($src_img);
//Nouvelles dimensions
$new_w = $width_mini;
$new_h = imagesy($src_img)*$proportion;
}else{
//On calcul la proportion
$proportion = $height_mini/imagesy($src_img);
//Nouvelles dimensions
$new_h = $height_mini;
$new_w = imagesx($src_img)*$proportion;
}
//On crée la nouvelle image
$dst_img = imagecreatetruecolor($new_w,$new_h);
imagecopyresized($dst_img,$src_img,0,0,0,0,$new_w,$new_h,imagesx($src_img),imagesy($src_img));
//On l'enregistre
imagejpeg($dst_img,"$rep_mini/$file");
}
//On rajoute un noeud xml avec le nom de l'image et ses dimensions
$retour .= "<img name='$file' width='".imagesx($src_img)."' height='".imagesy($src_img)."' />";
}
}
//On ferme le premier noeud
$retour .= "</racine>";
//On ferme le dossier
closedir($rep);
//On renvoie le xml au format utf8
echo utf8_encode($retour);
?>
fichier galerie.swf:
var imglist = new XML(); //création de l'objet XML
imglist.ignoreWhite=true;// les espaces vides sont supprimés
imglist.load("getImgList.php");//chargement du document PHP
stop();
imglist.onLoad = function() {
createGalerie();
play(); }; //quand le chargement du document est terminé , lancement de l'animation
//Création de la galerie
function createGalerie() {
//liste des images
var noeuds = imglist.firstChild.childNodes;
// position de base du premier clip
for (var i = 0; i<noeuds.length; i++) {
var positionX=0;
var largeur=0;
var nom = noeuds[i].attributes.name;
// largeur de l image
if (i>0){
largeur = noeuds[i-1].attributes.width;
}
else { largeur=0 ;}
//On crée un clip vide et le positionne
var mc = this.createEmptyMovieClip("img"+i, i);
positionX+=noeuds[i-1].attributes.width;
//mc._x =(positionX + largeur);
var view = mc.createEmptyMovieClip("view", 0);
view.loadMovie("images/"+nom);
view._x = positionX + largeur
}
}