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

Delphi Discussion :

format image .jpg


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    agent de fisc(les impots)
    Inscrit en
    Juillet 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : agent de fisc(les impots)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 427
    Par défaut format image .jpg
    jai creer un petit prg qui affiche des image mon probleme est que je charge un image .bmp ya pas de probleme mais avec .jpg il m'affiche une erreur je c pas pour koi
    merci pour votre aide

  2. #2
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    charge ton Jpeg dans une instance TJpegImage (unite Jpeg) et appele la methode DIBNeeded.
    Apres un simple assign du jpeg sur le Bitmap suffira.

    Si tu veux charger le jpeg dans un TImage via LoadFromFile, il suffit simplement d'ajouter l'unitee jpeg et tout se fera tout seul

  3. #3
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Salut,

    Comme le dit Clorish, passe par l'unite Jpeg.

    Ensuite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    var
       MonJpeg: TJPEGImage;
       MonBitmap: TBitmap;
    begin
      MonBitmap:= TBitmap.Create();
      MonJpeg:= TJPEGImage.Create();
      MonJpeg.LoadFromFile(JPEGFileName);
      MonBitmap.Width := MonJpeg.Width;
      MonBitmap.Height := MonJpeg.Height;
      MonBitmap.Assign(MonJpeg);
      MonJpeg.Free();
      MonBitmap.Free();
    end;
    Ce code est tiré de cette discussion

    Voilà

    PS: Qu'est ce que methode DIBNeeded ?

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Par défaut
    Bonjour,

    PS: Qu'est ce que methode DIBNeeded ?
    Elle décompresse l'image JPEG :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function  ConvJpegEnBMP2(nomFiJpeg : string) : TBitMap; // ok avec Jpeg dans le uses
    var       imgJPEG : TJPEGImage;
    begin     Result:=nil;
              imgJPEG := TJPEGImage.Create;
              try
                imgJPEG.LoadFromFile(nomFiJpeg);
                imgJPEG.DIBNeeded;
                Result := TBitmap.Create;
                Result.Assign(imgJPEG);
                //Result.SaveToFile(ChangeFileExt(nomFiJpeg,'.bmp'));
              finally
                imgJPEG.Free;
              end;
    end; //ConvJpegEnBMP2
    A+
    N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  5. #5
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Ok! Et si je comprends bien, ça joue sur la qualité finale du jpeg transformé en bmp ?

    Donc si je fais le DIBNeeded avant de faire assign, le bmp aura meilleure qualité ?

  6. #6
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    Citation Envoyé par Gilbert Geyer
    PS: Qu'est ce que methode DIBNeeded ?
    Elle décompresse l'image JPEG :
    DIB = Device Independant Bit

    Citation Envoyé par quelqu'un
    Les fichiers bitmap de Windows sont stockés dans un format "device-independant bitmap (DIB)".
    "device independant" signifie que le format de stockage dans le fichier est indépendant de la méthode qui sera utilisée pour l'afficher.
    Du peu que j'en sais c'est que cela permet de representer une image de telle maniere que l'on puisse acceder a chaques pixels.

  7. #7
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Ok!

    Si ça ,intéresse quelqu'un j'ai trouvé un article (en anglais) qui explique un peu les différences entre BMP et DIB ...

    C'est par

  8. #8
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Par défaut
    Re-bonjour,

    A propos de DIBNeeded : Je m'étais contenté de résumer ce que dit l'aide Delphi :
    Décompresse un bitmap à partir de l'image JPEG.

    procedure DIBNeeded;

    Description

    DIBNeeded est utilisée quand l'image JPEG nécessite une représentation sous forme de bitmap de son image. Par exemple, appelez DIBNeeded juste avant de dessiner plutôt qu'au moment de dessiner de manière optimisée.
    ... mais pour le reste Clorish est plus calé que moi.

    Ok! Et si je comprends bien, ça joue sur la qualité finale du jpeg transformé en bmp ?

    Donc si je fais le DIBNeeded avant de faire assign, le bmp aura meilleure qualité ?
    ... j'ai comparé, avec ou sans DIBNeeded la qualité de l'image semble être "visiblement" la même, par contre pour ce qui se passe en mémoire j'en sais rien; il faudrait à cet effet comparer les valeurs des scanlines des bmp correspondant l'un à un chargement avec DIBNeeded et l'autre sans DIBNeeded. Mais je parie que c'est kif-kif.
    A+
    N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

Discussions similaires

  1. Superposer deux images au format BMP, JPG ou PNG
    Par Henri-gp dans le forum Langage
    Réponses: 39
    Dernier message: 22/12/2016, 14h42
  2. Inserer une image.jpg dans table
    Par loumanga dans le forum PostgreSQL
    Réponses: 7
    Dernier message: 30/01/2006, 14h14
  3. Afficher une image JPG qui se trouve dans une bdd
    Par Harry dans le forum Bases de données
    Réponses: 6
    Dernier message: 27/02/2004, 10h51
  4. Charger et afficher une image jpg avec les mfc
    Par glop - pas glop dans le forum MFC
    Réponses: 3
    Dernier message: 11/02/2004, 18h59
  5. [Kylix] pb Affichage image .jpg
    Par sioux dans le forum EDI
    Réponses: 4
    Dernier message: 18/01/2004, 19h20

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