Soyez le premier à donner votre avis sur cette source.
Snippet vu 20 174 fois - Téléchargée 31 fois
<?PHP $lalarg = 250; //Largeur maximale $lahaut = 250; //Hauteur maximale $rep_cur = getcwd(); //On prend le répertoire courant chdir($rep_cur); //On initialise le répertoire $rep = opendir($cur_rep); //On ouvre le répertoire //Ensuite on lit un par un les fichiers et dossiers du répertoire en ne prenant que les jpg while ($zone = readdir($rep)){ if ($zone != "." && $zone != ".." && strtoupper(substr($zone,-3)) == "JPG") {echo "<u><span style=\"color:#BB3300\">Traitement du fichier \"$zone\"</span></u><br>"; $origin = ImageCreateFromJPEG("./$zone"); $taille = FileSize("./$zone"); echo "<b>Taille: </b><i>$taille octets</i><br>"; $larg = ImageSX($origin); $pc_l = $larg / $lalarg; $haut = ImageSY($origin); $pc_h = $haut / $lahaut; echo "<b>Largeur: </b><i>$larg</i><br><b>Hauteur: </b><i>$haut</i><br>"; echo "<b>Largeur % lalarg: </b><i>$pc_l</i><br><b>Hauteur % lahaut: </b><i>$pc_h</i><br>"; $pc_m = $pc_l; if ($pc_h > $pc_l) $pc_m = $pc_h; echo "<b>Dimension %: </b><i>$pc_m</i><br>"; $haut2 = $haut / $pc_m; $larg2 = $larg / $pc_m; $iqual = ($taille / $pc_m) /1000; $qual = 100; if ($iqual > 50) $qual = 100 * (50 / $iqual); echo "<b>Indice de qualité: </b><i>$iqual</i><br><b>Adaptation qualité %:</b><i>$qual</i><br>> thumb$zone généré<br><br>"; $thumb = ImageCreate($larg2,$haut2); ImageCopyResized($thumb, $origin, 0, 0, 0, 0,$larg2, $haut2, $larg, $haut); ImageJpeg($thumb,"./thumbs/thumb$zone",$qual); ImageDestroy($origin); ImageDestroy($thumb); } } ?>
9 sept. 2004 à 17:39
1 juil. 2004 à 17:22
-non il ne lit pas les sous-dossiers :)
1 juil. 2004 à 13:23
si j'ajoute la ligne
int imagerectangle(resource im ,int x1 ,int y1 ,int x2 ,int y2 ,int #000000 )
entre ces deux lignes :
imagecopyresized($thumb, $origin, 0, 0, 0, 0,$larg2, $haut2, $larg, haut);
imagejpeg($thumb,"./thumbs/thumb$zone",$qual);
j'aurai des miniatures avec une bordure noire de 1px incorporée à l'image? Sinon où dois-je placer cette ligne
Et une question : ce script lit-il les sous-dossiers?
Merci de votre aide, un newbie.
9 mai 2004 à 19:00
À la ligne 6 c'est :
$rep = opendir($rep_cur); //On ouvre le répertoire
et non
$rep = opendir($cur_rep); //On ouvre le répertoire
Bref il marche bien ton script et c'est parfaitement ce que je cherchais :). Un grand merci.
25 sept. 2003 à 16:15
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.