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

VB 6 et antérieur Discussion :

Dimension d'une photo jpeg


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Dimension d'une photo jpeg
    Boujour,
    J'aimerais savoir concretement ce que je dois faire pour récupérer la hauteur et la longueur d'une image jpeg ou gif stocké sur le disque, a l'aide de code VB6 et ou dll simple.

    Comme dans winXP quand on selectionne une image, ses dimensions apparaissent dans l'onglet détail avec H x L en pixel.
    Je veux juste connaitre les dimensions, éviter de l'afficher ou de la charger en mémoire serait la meilleur des solutions.

  2. #2
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mai 2004
    Messages : 148
    Points : 87
    Points
    87
    Par défaut
    Salut,

    Je ne pense pas que la méthode que j'emploie soit la seule, mais en tout cas elle marche.

    Premierement tu crées une PictureBox nomée Img, ensuite tu lui appliques les propriétés AutoSize = True (dans la fenetre propriétés), et après tu charges l'image dedans (Img.Picture = LoadPicture("Image.jpg")). Ainsi en faisant x=Img.Width et y=Img.Height tu obtiens sa taille.

    Le seul problème, c'est que si tu dois connaitre les dimensions de 2000 images, cela mettra quelques secondes à s'executer.
    Celui qui pose une question est bête 5 minutes, celui qui ne la pose pas est bête toute sa vie...

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 656
    Points
    66 656
    Billets dans le blog
    1
    Par défaut
    J'en suis resté à la même méthode...
    Mais il doit y avoir moyen d'acceder aux metadonnées stockées en entête du fichier..
    voici un lien sur la structure des fichiers de différents formats... tu y trouveras peut être ton bonheur ...
    => WOTSIT : 'http://www.wotsit.org/search.asp?page=22&s=ALLFILES'



    [édité par Dark Vader]
    Je me suis permis de modifier le texte du lien pour le moteur de recherche :
    le nom de ce site ayant encore disparu des posts
    alors que c'est une référence pour tout ce qui est
    entête ou structure de fichier image document son etc.
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    merci a vous 2. Je connais aussi cette methode qui consiste a charger l'image dans une picturebox elle est bonne mais ressemble plus a du bidouillage qu'autre chose quand on ne desire pas l'afficher.
    Je vais donc essayer de comprendre le fonctionnement de ces metadonnées.

    Merci

  5. #5
    Candidat au Club
    Inscrit en
    Janvier 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2
    Points : 4
    Points
    4
    Par défaut
    Salut,

    je suis un peu scotché sur un même problème : j'aimerais compter les pixels blancs d'une image (enregistrée sur le disque) au format BMP 2couleurs.

    J'ai exploité la solution de la PictureBox, mais je trouve aussi que ça ressemble à de la bidouille...
    elle est bonne mais ressemble plus a du bidouillage qu'autre chose quand on ne desire pas l'afficher.
    Quelqu'un a-t'il une proposition ?

    Merci !

    **** Gloubs ****

  6. #6
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mai 2004
    Messages : 148
    Points : 87
    Points
    87
    Par défaut
    Salut, ...

    Une solution est de charger le contenu du fichier bitmap dans un tableau de type Byte. Un bitmap monochrome s'organise ainsi : 54 octets d'entête + 8 octets pour la palette des couleurs + (X * Y / 8 arrondi au supérieur) octets pour la couleur de chaque pixel.

    Tu charges donc le fichier dans un tableau d'octets, tu fais une boucle pour compter le nombre de bits à 0. Le nombre de bits à 0 est le nombre de pixels blancs.

    Exemple pour une image 'Carte.bmp' de 100 x 100 pixels :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim Oct(1 To 10000) As Byte, NbPixBlanc As Long
    Dim NoOct As Long, NoBit As Long, Poids As Byte
    NbPixBlanc = 0
    Open "Carte.bmp" For Binary As #1
    Get #1, 63, Oct()
    Close #1
    For NoOct = 1 To 10000
        For NoBit = 0 To 7
            Poids = 2 ^ NoBit
            If (Oct(NoOct) And Poids) = Poids Then NbPixBlanc = NbPixBlanc + 1
        Next NoBit
    Next NoOct
    MsgBox "Il y a dans cette image " & NbPixBlanc & " pixels blancs"
    Voilà, j'éspère que c'est ce que tu cherchais.
    Celui qui pose une question est bête 5 minutes, celui qui ne la pose pas est bête toute sa vie...

Discussions similaires

  1. convertir une photo prise par la caméra (jpeg) en bmp
    Par androidisme dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 17/08/2010, 09h27
  2. Convertir une photo .jpeg en .ps
    Par markfish55 dans le forum Editeurs / Outils
    Réponses: 2
    Dernier message: 09/02/2009, 09h48
  3. [GD] agrandir une photo selon ses dimensions
    Par lrool2014 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 09/12/2008, 12h26
  4. Réponses: 1
    Dernier message: 18/03/2008, 16h07
  5. Réponses: 53
    Dernier message: 12/01/2007, 21h00

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