IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[ImageMagick] Conversion de fichiers jpeg en bmp


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 4
    Points : 3
    Points
    3
    Par défaut [ImageMagick] Conversion de fichiers jpeg en bmp
    Bonjour,

    J'aimerais convertir des fichiers JPG en BMP (et pas l'inverse) via un script PHP. J'ai effectué quelques recherches sur le net, et je suis tombé sur la bibliothèque GD. Mais j'aimerais savoir s'il y a plus simple Merci.

  2. #2
    Expert éminent
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2003
    Messages : 3 497
    Points : 8 237
    Points
    8 237
    Par défaut
    à part utiliser un programme sur le serveur qui fait la conversion, je vois pas comment tu pourrais faire sans gd !

    je te donne le nom des fonctions à utiliser
    • imagecreatefromjpeg (pour ouvrir l'image source)
    • imagesx et imagesy pour récupérer les dimensions de l'image à créer
    • imagecreatetruecolor (pour créer la nouvelle image)
    • imagecopymerge
    • imagewbmp
    • imagedestroy


    la description des fonctions est dans la doc sur php.net et dans ce tuto

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Merci beaucoup, parfait ce tuto

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    J'ai un problème avec imagewbmp, ça me sort un fichier illisible de 13ko à partir d'un jpg de 45ko...

    La fonction imagepng fonctionne nickel par contre... je comprends pas

  5. #5
    Expert éminent
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2003
    Messages : 3 497
    Points : 8 237
    Points
    8 237
    Par défaut
    il se trouve que wbmp fonctionne pas correctement.

    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
    <?php
    function imagebmp ($im, $fn = false)
    {
       if (!$im) return false;
     
       if ($fn === false) $fn = 'php://output';
       $f = fopen ($fn, "w");
       if (!$f) return false;
     
       //Image dimensions
       $biWidth = imagesx ($im);
       $biHeight = imagesy ($im);
       $biBPLine = $biWidth * 3;
       $biStride = ($biBPLine + 3) & ~3;
       $biSizeImage = $biStride * $biHeight;
       $bfOffBits = 54;
       $bfSize = $bfOffBits + $biSizeImage;
     
       //BITMAPFILEHEADER
       fwrite ($f, 'BM', 2);
       fwrite ($f, pack ('VvvV', $bfSize, 0, 0, $bfOffBits));
     
       //BITMAPINFO (BITMAPINFOHEADER)
       fwrite ($f, pack ('VVVvvVVVVVV', 40, $biWidth, $biHeight, 1, 24, 0, $biSizeImage, 0, 0, 0, 0));
     
       $numpad = $biStride - $biBPLine;
       for ($y = $biHeight - 1; $y >= 0; --$y)
       {
           for ($x = 0; $x < $biWidth; ++$x)
           {
               $col = imagecolorat ($im, $x, $y);
               fwrite ($f, pack ('V', $col), 3);
           }
           for ($i = 0; $i < $numpad; ++$i)
               fwrite ($f, pack ('C', 0));
       }
       fclose ($f);
       return true;
    }
     
     
    imagecreatefromjpeg('image.jpg');
    header("Content-type: ".image_type_to_mime_type(IMAGETYPE_WBMP));
    imagebmp($image);
    ?>
    et ça marche bien
    source - exemple écrit par "shd at earthling dot net"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Conversion jpeg vers bmp
    Par etranger dans le forum 2D
    Réponses: 1
    Dernier message: 15/06/2007, 04h45
  2. Imagemagick : Conversion de tif en jpeg
    Par syl2095 dans le forum Linux
    Réponses: 5
    Dernier message: 11/12/2006, 13h18
  3. conversion JPEG to BMP
    Par nac dans le forum Bibliothèques
    Réponses: 2
    Dernier message: 21/03/2006, 17h36
  4. [ImageMagick] Conversion d'un bmp en jpg ?
    Par matique dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 06/02/2006, 12h51
  5. Réponses: 5
    Dernier message: 20/08/2002, 18h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo