woulfy | Voilà j'essaie de convertir a la volée les images d'un repertoire, le script tourne en local mais pas sur OVH, avec la meme librairie (GD2). Le script me sort des images noires... si qqn a déjà eu le meme problème...
Code :
- <?
- // script permettant de convertir les images des articles
- // au format 150*150
- if ($handle = opendir('.')) {
- while (false !== ($file = readdir($handle))) {
- if ($file != "." && $file != ".." ) {
- echo "Traitement de : ".$file."<br />";
- // ---------- préparation des informations
- $image = "$file";
- $extension = strpos($image, '.');
- $extension = substr($file, $extension, "4" );
- if($extension == ".gif" OR $extension == ".GIF" ) {
- $src_im = ImageCreateFromGif($image);
- }
- elseif($extension == ".jpg" OR $extension == ".JPG" ) {
- $src_im = ImageCreateFromJpeg($image);
- }
- $size = GetImageSize($image);
- $src_w = $size[0];
- $src_h = $size[1];
- // ---------- création de la zone qui recevra l'image
- $dst_w = 150;
- $dst_h = 150;
- $dst_im = ImageCreateTrueColor($dst_w,$dst_h);
- // ---------- on adapte les dimentions de l'image en cadrant au milieu
- // si + large que haute...
- if($src_w > $src_h) {
- ImageCopyResampled($dst_im,$src_im,0,0,($src_w/2)-($src_h/2),0,'150','150',$src_h,$src_h); }
- // si + haute que large...
- elseif($src_w < $src_h) {
- ImageCopyResampled($dst_im,$src_im,0,0,0,($src_h/2)-($src_w/2),'150','150',$src_w,$src_w); }
- // si carrée...
- else {
- ImageCopyResampled($dst_im,$src_im,0,0,0,0,'150','150',$src_w,$src_w); }
- // ---------- on copie l'image
- $extension = strpos($image, '.');
- $image_sans_extension = substr($image, 0, $extension);
- ImageGif($dst_im, './small/'.$image_sans_extension.'.gif');
- ImageDestroy($dst_im);
- imageDestroy($src_im);
- }
- }
- closedir($handle);
- }
- ?>
|
Allez zou je vais essayer d'autres petits trucs |