Salut,
Voilà, j'aimerai redimensionner et diminuer un .bmp ou .gif, mais :
pour le bmp : imagecreatefromwbmp() ne fonctionne pas
pour le gif : imagegif() car ce n'est plus pris en charge par GD
donc comment faire?
je suis un peu perdu
Salut,
Voilà, j'aimerai redimensionner et diminuer un .bmp ou .gif, mais :
pour le bmp : imagecreatefromwbmp() ne fonctionne pas
pour le gif : imagegif() car ce n'est plus pris en charge par GD
donc comment faire?
je suis un peu perdu
Une piste ...
La librairie image2resize ...
Salut
Pour le GIF, je crois que tu fais erreur :
Comme tu peux le constater, cete fonction est encore disponible avec PHP5.Envoyé par Doc PHP
Sinon, dans l'absolu, imagecreatefromwbmp() fonctionne (contrairement à ce que tu affirmes). C'est dans ton cas que cela ne fonctionne pas et nous aurons besoin de détails pour t'aider plus précisément.
Il y avait une version de GD qui ne prenait plus en compte le GIF pour des raisons de licenses. C'est chose corrigée avec les dernières version de GD.
Pour le BMP j'ai jamais réussi à faire un truc potable avec. C'est un format pourri.
Pour le reste c'est avec imagecopyresampled().
re
j'arrive toujours pas...
voila ma fonction :
pour le imagecopyresized : supplied argument is not a valid Image resource
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 function miniature($chemin_original, $chemin_mini, $fichier_image, $largeur_mini , $hauteur_mini , $extension , $qualite) { if($extension == ".jpg" || $extension == ".jpeg"){ $image_origine = imagecreatefromjpeg("$chemin_original/$fichier_image"); $largeur_origine = imagesx($image_origine); $hauteur_origine = imagesy($image_origine); // $hauteur_mini = $hauteur_origine * $largeur_mini / $largeur_origine; $image_finale = imagecreatetruecolor($largeur_mini, $hauteur_mini); imagecopyresized($image_finale, $image_origine, 0, 0, 0, 0, $largeur_mini, $hauteur_mini, imagesx($image_origine), imagesy($image_origine) ); imagejpeg($image_finale, "$chemin_mini/$fichier_image" , $qualite); imagedestroy($image_finale); return true; }elseif($extension == ".png"){ $image_origine = imagecreatefrompng("$chemin_original/$fichier_image"); $largeur_origine = imagesx($image_origine); $hauteur_origine = imagesy($image_origine); // $hauteur_mini = $hauteur_origine * $largeur_mini / $largeur_origine; $image_finale = imagecreatetruecolor ($largeur_mini, $hauteur_mini); imagecopyresized($image_finale, $image_origine, 0, 0, 0, 0, $largeur_mini, $hauteur_mini, imagesx($image_origine), imagesy($image_origine) ); imagepng($image_finale, "$chemin_mini/$fichier_image"); imagedestroy($image_finale); return true; }elseif($extension == ".bmp"){ //$image_origine = imagecreatefromwbmp("$chemin_original/$fichier_image"); $image_origine = imagecreatefromwbmp("$chemin_original/$fichier_image"); $largeur_origine = imagesx($image_origine); $hauteur_origine = imagesy($image_origine); // $hauteur_mini = $hauteur_origine * $largeur_mini / $largeur_origine; $image_finale = imagecreatetruecolor ($largeur_mini, $hauteur_mini); imagecopyresized($image_finale, $image_origine, 0, 0, 0, 0, $largeur_mini, $hauteur_mini, imagesx($image_origine), imagesy($image_origine) ); imagewbmp($image_finale, "$chemin_mini/$fichier_image"); imagedestroy($image_finale); return true; }elseif($extension == ".gif"){ $image_size = getimagesize($image_origine); //$hauteur_origine = getimagesize($image_origine); imagecopyresized($image_finale , "$chemin_original/$fichier_image" , 0, 0, 0, 0, $largeur_mini, $hauteur_mini, $image_size[0], $image_size[0] ); /* $image_origine = imagecreatefromgif("$chemin_original/$fichier_image"); $largeur_origine = imagesx($image_origine); $hauteur_origine = imagesy($image_origine); // $hauteur_mini = $hauteur_origine * $largeur_mini / $largeur_origine; $image_finale = imagecreatetruecolor ($largeur_mini, $hauteur_mini); imagecopyresized($image_finale, $image_origine, 0, 0, 0, 0, $largeur_mini, $hauteur_mini, imagesx($image_origine), imagesy($image_origine) ); imagegif($image_finale, "$chemin_mini/$fichier_image"); imagedestroy($image_finale); return true;*/ } }
pour le gif : Call to undefined function: imagegif()
pour le bmp : ex1.bmp' is not a valid WBMP file in...
voila je suis assez perdu...
wbmp = .bmp non?
Fais ceci, et donnes-nous ce que ça te retourne :
<pre>
<?php
    print_r ( gd_info()  ;
?>
</pre>
Phpsyntaxcolor powered by decabodi.com
voici ce que j'obtiens
[/list]
Code : Sélectionner tout - Visualiser dans une fenêtre à part Array ( [GD Version] => bundled (2.0.15 compatible) [FreeType Support] => 1 [FreeType Linkage] => with freetype [T1Lib Support] => [GIF Read Support] => 1 [GIF Create Support] => [JPG Support] => 1 [PNG Support] => 1 [WBMP Support] => 1 [XBM Support] => 1 [JIS-mapped Japanese Font Support] => )
faudrait peut être voir à ne pas confondre les format d'image non plus... WBMP et BMP ce n'est pas la même chose...
Si je ne m'abuse, le WBMP est une bitmap "noir et blanc" (pas de ton de gris hein, les pixels sont "noir" ou "blanc")... c'est un format utilisé sur les (vieux) téléphones portables...
Si tu veux vraiment gèrer un grand nombre de format d'image : ImageMagick. Il existe d'ailleurs 2 extensions pour PHP.
EDIT : d'ailleurs, on peut lire sur Wikipedia : Le WBMP est un format d'image monochrome pour le WAP, protocole destiné aux téléphones portables.
Ben en tout cas tu n'a pas la version de GD qui supporte le gif.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager