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

C++Builder Discussion :

ouvrir une image jpeg


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    D�cembre 2006
    Messages
    36
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2006
    Messages : 36
    Par d�faut ouvrir une image jpeg
    slt je voudrais lire une image jpeg ,pour une image bmp j'ai fait comme suit:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    if (OpenPictureDialog1->Execute())
      {
     
        Image1->Picture->LoadFromFile(OpenPictureDialog1->FileName);
        Edit4->Text=IntToStr(Image1->Height);
        Edit5->Text=IntToStr(Image1->Width);
      }
    mais pour une image jpeg je ne sais pas comment la lire et avoir sa matrice

  2. #2
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    D�tails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par d�faut
    Salut regarde du c�t� du composant TJPEG.

  3. #3
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    D�tails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811

  4. #4
    Membre �m�rite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    F�vrier 2006
    Messages
    916
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 916
    Par d�faut
    Salut,
    Voil� un exemple qui te permettra d'ouvrir les formats d'images les plus utilis�s (BMP,ICO,JPEG) en dynamique.
    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
     
        if(OpenPictureDialog1->Execute())
        {
            if(ExtractFileExt(OpenPictureDialog1->FileName).LowerCase() == ".bmp")
            {//bitmap
                Image1->Picture->Bitmap->LoadFromFile(OpenPictureDialog1->FileName);
            }
            else if(ExtractFileExt(OpenPictureDialog1->FileName).LowerCase() == ".ico")
            {//bitmap
                Image1->Picture->Icon->LoadFromFile(OpenPictureDialog1->FileName);
            }
            else if(ExtractFileExt(OpenPictureDialog1->FileName).LowerCase() == ".jpg" || ExtractFileExt(OpenPictureDialog1->FileName).LowerCase() == ".jpeg")
            {
                TJPEGImage *jpeg = new TJPEGImage();
                jpeg->LoadFromFile(OpenPictureDialog1->FileName);
                Image1->Picture->Assign(jpeg);
                delete jpeg;
            }
        }

  5. #5
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    D�tails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par d�faut
    Tu ne devrais pas faire un ExtractFileExt & un LowerCase � chaque fois dans ton if. Tu dois le faire une fois et mettre le r�sultats dans une variable locale.
    Imagine que ton image est un fichier .jpeg, alors il aura fait 4 fois les op�rations ExtractFileExt & LowerCase. Pauvre petit CPU, il ex�cute des comandes inutilement C'est certain que de nos jours avec les processeurs ultra rapide dans nos machines, qu'il n'y a pas de diff�rences notoires.

    C'est une recommandation de Soci�t� Protectrice des Processeurs.

    Pensons au r�chauffement de la plan�te, optimisons notre code

  6. #6
    Membre averti
    Inscrit en
    D�cembre 2006
    Messages
    36
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2006
    Messages : 36
    Par d�faut
    mer�i pour votre aide ,je vais esseyer vos propositions.

  7. #7
    Membre �m�rite
    Avatar de bandit boy
    Profil pro
    Inscrit en
    F�vrier 2006
    Messages
    916
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 916
    Par d�faut
    Citation Envoy� par Crayon
    Tu ne devrais pas faire un ExtractFileExt & un LowerCase � chaque fois dans ton if. Tu dois le faire une fois et mettre le r�sultats dans une variable locale.
    Imagine que ton image est un fichier .jpeg, alors il aura fait 4 fois les op�rations ExtractFileExt & LowerCase. Pauvre petit CPU, il ex�cute des comandes inutilement C'est certain que de nos jours avec les processeurs ultra rapide dans nos machines, qu'il n'y a pas de diff�rences notoires.

    C'est une recommandation de Soci�t� Protectrice des Processeurs.

    Pensons au r�chauffement de la plan�te, optimisons notre code
    Ne t'inqui�tes pas pour le processeurs, ce code est compil� et le code compil� est souvent diff�rent du code saisie. Les options de compilations prennent en compte ces optimisations (temps, taille ...).
    En r�sum� dans ce code le r�sultat de l'op�ration ExtractFileExt & LowerCase est mis dans une variable temporaire et le test est fait par rapport � cette variable. Exactement comme ce que tu fais, le compilateur recherche m�me les m�mes conditions dans des fonctions diff�rentes pour optimiser aux maximum la taille du fichier (et ainsi pointer sur 1 condition).

    Si tu fais un test pour voir le temps d'ex�cution entre ta fonction et la mienne, il ne doit pas y avoir de diff�rence.

    Sinon, le probl�me est-il r�solu?

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�cup�rer une image JPEG � partir d'une vid�o
    Par kurul1 dans le forum C++Builder
    R�ponses: 8
    Dernier message: 09/08/2006, 10h51
  2. Rogner une image jpeg ou bmp
    Par Valeyre dans le forum Langage
    R�ponses: 10
    Dernier message: 18/10/2005, 11h01
  3. [32 bits] Redimensionner une image JPEG/GIF/PNG...
    Par CR_Gio dans le forum x86 32-bits / 64-bits
    R�ponses: 2
    Dernier message: 04/10/2005, 00h57
  4. Copier une image (jpeg) dans le presse papier
    Par benj63 dans le forum C++Builder
    R�ponses: 2
    Dernier message: 29/07/2002, 14h51
  5. comment r�duire une image jpeg (taille x*y)
    Par don-diego dans le forum C
    R�ponses: 4
    Dernier message: 14/07/2002, 20h06

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