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 :

[VB6] "Concaténation" de deux images en une seule


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut [VB6] "Concaténation" de deux images en une seule
    Bonjour,

    J'aimerai pouvoir créer une seule image JPG à partir de deux images JPG, la deuxième étant en-dessous de la première.

    Est-ce possible ?
    Si oui, comment ?

    Merci

  2. #2
    Membre émérite
    Inscrit en
    Septembre 2005
    Messages
    617
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 617
    Par défaut
    Oui avec 2 pictureBox

    Une contien l'image de fond
    La seconde l'image a copier avec une couleur différencient la zone a masquer lors de la supoerposition...

    Tu parcoure la seconde point par point et si la couleur est différente de celle de la zone a masquer hop tu change la couleur de ce point dans la picturebox contenant le fond...

    Voila :p

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    Merci Vesta, mais quand je disais "en-dessous", c'était en fait pour dire la première en haut et l'autre en bas... Ca devait être trop simple

    En tout cas l'idée des 2 PictureBox est intéressante, même si je dois éviter d'afficher cela sur une interface...

    J'ai pas le temps de tester ca tout de suite, je pensais pas que la réponse serait aussi rapide

  4. #4
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Salut

    J'espère que tu es familiers avec ce format de fichiers. Tu connais ses spécifications?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    Euh ben je vais m'informer

    C'est aussi compliqué que ca de faire un truc aussi "simple" ?

  6. #6
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Ben... c'est surtout pour trouver où dans le fichier se cache l'information sur la taille de l'image, si ça se trouve... Je n'ai jamais bidouillé dans ce type de fichier, mais c'est par l'étude du format que je commencerais... personnellement.

  7. #7
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Citation Envoyé par KrusK
    J'aimerai pouvoir créer une seule image JPG à partir de deux images JPG, (...)
    J'ai bien lu créer une seule image... d'où ma suggestion d'étudier la structure des fichier JPEG.

    À moins qu'un astucieux connaisse une API qui enregistre les fichiers JPG... ?

  8. #8
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    rebonsoir

    ci joint un exemple complet qui permet de fusionner 2 images verticalement


    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
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    Sub FusionVerticale_DeuxImages()
    'Utilisation de la
    'librairie Windows Image Acquisition Automation Library v2.0
    '(à partir de Windows XP)
    '
    Dim Img1 As Object, Img2 As Object
    Dim IP As Object
    Dim Largeur As Long, Hauteur As Long
    Dim V As Object, Img3 As Object
    Dim C As Long
    Dim i As Integer
     
    Set Img1 = CreateObject("WIA.ImageFile")
    Set Img2 = CreateObject("WIA.ImageFile")
    Set IP = CreateObject("WIA.ImageProcess")
     
    'l'image qui sera placée au dessus
    Img1.LoadFile ("C:\Documents and Settings\michel\dossier\image01.JPG")
    'l'image qui sera placée dessous
    Img2.LoadFile ("C:\Documents and Settings\michel\dossier\image02.JPG")
     
     
    '------ceation d'une image support pour fusionner les 2 images
        If Img1.Width > Img2.Width Then
            Largeur = Img1.Width
            Else
            Largeur = Img2.Width
        End If
     
        Hauteur = Img1.Height + Img2.Height
     
        C = &H80000004 'couleur de fond
        Set V = CreateObject("WIA.Vector")
     
        V.Add C
        V.Add C
        V.Add C
        V.Add C
     
        Set Img3 = V.ImageFile(2, 2)
        Set IP = CreateObject("WIA.ImageProcess")
        IP.Filters.Add IP.FilterInfos("Scale").FilterID
        IP.Filters(1).Properties("MaximumWidth") = Largeur
        IP.Filters(1).Properties("MaximumHeight") = Hauteur
        IP.Filters(1).Properties("PreserveAspectRatio") = False
        Set Img3 = IP.Apply(Img3)
    '------------------
     
     
    'réinitialisation des filtres
    For i = 1 To IP.Filters.Count
    IP.Filters.Remove i
    Next i
     
    'fusionner l'image1 dans le support
    IP.Filters.Add (IP.FilterInfos("Stamp").FilterID)
    IP.Filters(1).Properties("ImageFile") = Img1
    IP.Filters(1).Properties("Left") = 0
    IP.Filters(1).Properties("Top") = 0
     
    Set Img3 = IP.Apply(Img3)
     
    'fusionner l'image2 dans le support
    IP.Filters(1).Properties("ImageFile") = Img2
    IP.Filters(1).Properties("Left") = 0
    IP.Filters(1).Properties("Top") = Img1.Height
     
    Set Img3 = IP.Apply(Img3)
     
    'sauvegarde de la nouvelle image
    Img3.SaveFile ("C:\resultat_Fusion_Deux_images.jpg")
    End Sub



    bonne soiree
    michel

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    Merci Michel, ca marche nickel ! (pas fait exprès la rime )

    PS : zazaraignée, je ne cherchais pas à analyser la structure d'un fichier JPG

  10. #10
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut
    j'aimerais savoir si ces lignes de code, normalement fait sur [VB6], peuvent-elles etre utilisé en [VBa -E]?

    Merci d'avance

  11. #11
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonjour

    cette macro a été réalisée en VBA-Excel2002 , sous WinXP


    bonne journée
    michel

  12. #12
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Par défaut


    dézolé d'avoir ajouté un text qui ne sert à rien mais je me suis planté d'endroit

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

Discussions similaires

  1. Deux images dans une même fenêtre
    Par ambessa dans le forum OpenCV
    Réponses: 3
    Dernier message: 23/06/2008, 17h54
  2. "Merger" deux images avec une couleur de transparence
    Par MaelstroeM dans le forum VB.NET
    Réponses: 7
    Dernier message: 14/09/2007, 09h34

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