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

Macros et VBA Excel Discussion :

sauvegarde d'une selection de partie image dans un fichier jpeg


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2018
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Philippines

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2018
    Messages : 73
    Par défaut sauvegarde d'une selection de partie image dans un fichier jpeg
    re Bonjour
    PUIS JE ABUSER DE VOTRE GENTILLESSE ,

    Maintenant que mon probleme de selection de zone image dans un userforme est reglé (gros merci a Tête de Chat ), je n'arrive pas a la sauvegarder en jpg
    Je me heute a des methodes non gérer, incompatibilité de type etc ..... j'ai fait plusieurs essais pour revenir a ma solution initiale dans le code ci-dessous

    Update : qui en fait etait une erreur colossale puisque je n ai plus gdpicture


    donc si vous avez des solutions a me suggerer ...... je suis preneur

    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
     
    Public Sub PageFreqimg_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
        ' Lorsque l'utilisateur relâche le clic, enregistrez les coordonnées de fin
        If SelectionEnCours = 2 _
            Then
                SelectionEnCours = 0
            X2 = X
            Y2 = Y
        End If
             ' Copie et sauvegarde de la zone sélectionnée en tant qu'image JPEG
        Dim FicCible As String
        FicCible = RepExport & "\" & ActionOCR & ".jpg"
        CopierEtSauvegarderSelection FicCible    '<w=================== appel 
        '............................................  reste du code
     
    Public Sub CopierEtSauvegarderSelection(FicCible As String)
        ' Vérifiez si les coordonnées de début et de fin de la sélection sont valides
        If X1 = 0 Or Y1 = 0 Or X2 = 0 Or Y2 = 0 Then
            MsgBox "Please select an area to copy first.", vbExclamation
            Exit Sub
        End If
     
        ' Créez un objet GdPicture
        Dim gdPicture As Object
        Set gdPicture = CreateObject("GdPicture.GdPicture.10") '<============== le probleme est là, j ai meme essayé de passer par un userformtemporaire  :arf::arf:
     
        ' Chargez l'image source
        Dim imagePath As String
        imagePath = PageFreqimg.Picture
        If gdPicture.LoadFromFile(imagePath) = 0 Then
            MsgBox "Unable to load the image.", vbExclamation
            Exit Sub
        End If
     
        ' Calculez les coordonnées de la zone sélectionnée
        Dim width As Long
        Dim height As Long
        width = X2 - X1
        height = Y2 - Y1
     
        ' Copiez la zone sélectionnée
        gdPicture.Crop X1, Y1, width, height
     
        ' Enregistrez la zone sélectionnée en tant qu'image JPEG
        If gdPicture.SaveAsJPEG(FicCible, 75) = 0 Then
            MsgBox "Error while saving the image.", vbExclamation
        Else
            MsgBox "The selection has been copied and saved as a JPEG image.", vbInformation
        End If
     
        ' Libérez les ressources de GdPicture
        gdPicture.CloseImage
        Set gdPicture = Nothing
    End Sub
    Avez vous une solution pour moi

  2. #2
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 248
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 248
    Par défaut
    Hello,
    as-tu gdpicture installé sur ta machine ? Si oui quelle version , est-il gratuit, dans ce cas où peut-on l'obtenir ? j'ai bien vu un gdpicture.Net ​qui ressemble à ce que tu utilises mais c'est un logiciel payant.
    Ami calmant, J.P

  3. #3
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2018
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Philippines

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2018
    Messages : 73
    Par défaut
    Citation Envoyé par jurassic pork Voir le message
    Hello,
    as-tu gdpicture installé sur ta machine ? Si oui quelle version , est-il gratuit, dans ce cas où peut-on l'obtenir ? j'ai bien vu un gdpicture.Net ​qui ressemble à ce que tu utilises mais c'est un logiciel payant.
    Ami calmant, J.P
    en fait je ne l'ai plus gdpicture.
    c'est une erreur de ma part d'y faire appel, il faut que je trouve une autre solution

  4. #4
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 248
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 248
    Par défaut
    si tu nous mets en pièce jointe un classeur avec ton code ton formulaire et sans données confidentielles (ex: Feuilles Excel vides) on pourra peut-être t'aider à trouver une solution

  5. #5
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Janvier 2018
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Philippines

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2018
    Messages : 73
    Par défaut
    Citation Envoyé par jurassic pork Voir le message
    si tu nous mets en pièce jointe un classeur avec ton code ton formulaire et sans données confidentielles (ex: Feuilles Excel vides) on pourra peut-être t'aider à trouver une solution
    pas de prob
    J'ai un userform dans lequel j'affiche le resultat d'un scan dont voici une partie
    En fait c'est l'impression d'une feuille excel dont on doit récuperer des infos dispersées dans les feuilles avec des formats non standard (cellules fusionnées, retour a la ligne, coupure de mots, etc) pour les passer a travers tesseract-OCR pour pouvoir les réinjecter vers une nouvelle feuille excel et bien sur les sources excel ont disparue (merci le papier)
    Nom : Capture1.JPG
Affichages : 66
Taille : 196,6 Ko

    la selection de zone semble bien se passer, je recupere bien X1 Y1 et dans la procedure sur fin de souris X2 Y2
    Maintenant il faut que je sauvegarde cette partie d'image dans un fichier au format Jpg pour l'envoyer a tesseract_OCR a travers le shell qui va me le sauvegarder en txt
    que je retravail apres pour faire du nettoyage en partie automatique (suppression des doubles, triple espace, retour chariot, . decimal versus virgule etc etc) , en partie manuelle validation visuelle ....

    j ai donc une gestion d'évenement mousedown pour le dbut de zone et mousseup pour la fin de zone voici le code
    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
     
    Public Sub PageFreqimg_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
        ' Lorsque l'utilisateur relâche le clic, enregistrez les coordonnées de fin
        If SelectionEnCours = 2 _
            Then
                SelectionEnCours = 0
            X2 = X
            Y2 = Y
        End If
     
    ' ==================================================== C est ici que je n arrive pas a sauvegarder je faisais par erreur un appel a GdPicture mais je ne l'ai plus 'de dispo et j ai essayé avec clipboard et je n'arrive pas a le mettre au point
    ' il faut donc que je trouve une solution le plus possible "native de windows et excel" pour integrer dans le code de   CopierEtSauvegarderSelection  qui va aller enregistrer ici = FicCible
     
             ' Copie et sauvegarde de la zone sélectionnée en tant qu'image JPEG
        Dim FicCible As String
        FicCible = RepExport & "\" & ActionOCR & ".jpg"
        CopierEtSauvegarderSelection FicCible
        ' Repasser le formulaire en mode modal
        Me.Show vbModal
        '
     '  Reste du code  vers l'OCR est l'appel du userform de validation manuelle
    End Sub
    J espere avoir été clair

  6. #6
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 248
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 248
    Par défaut
    Question bête : pourquoi passer par du VBA alors que l'opération peut être faite avec un logiciel de dessin (séléction partie image et sauvegarde) ou des logiciels qui utilisent tesserac
    Sinon voir ici : how-to-crop-an-image-using-wia-in-vba

Discussions similaires

  1. Sauvegarder une Url au format BLOB dans un fichier image
    Par nikko49 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 27/01/2016, 03h22
  2. [ImageMagick] Sauvegarder une image dans un fichier
    Par kivan666 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 15/12/2006, 12h28
  3. sauvegarde d'ne image dans un fichier?
    Par waiso dans le forum OpenGL
    Réponses: 3
    Dernier message: 12/05/2006, 08h33
  4. Récupérer la taille d'une image dans un fichier (GIF/JPEG)
    Par SheikYerbouti dans le forum Multimédia
    Réponses: 4
    Dernier message: 12/05/2005, 14h17
  5. [C#]Sauvegarde d'une selection multiple d'une listbox?
    Par onouiri dans le forum ASP.NET
    Réponses: 7
    Dernier message: 29/04/2004, 17h16

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