1. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

DEMANDE Convertir image vers une chaine

Discussion dans 'Windev' créé par Mohamed, Juin 12, 2018.

  1. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Bonjour

    Dans mon fichier j'ai 2 rubriques (Image de type image et l'autre de type chaine de traille =264)
    je veux convertir tout mes images vers la rubrique de type chaine c'est pour cela j'ai mis ce code ci dessous mais ca marche pas. Toujours ImageHexa reçoit le vide

    ImageHexa est un Buffer
    POUR TOUT ScanDoc

    ImageHexa =BufferVersHexa(ScanDoc.Image)
    ScanDoc.DocumentScanné =ImageHexa

    SI PAS HModifie(ScanDoc)ALORS
    Info(HErreurInfo(hErrComplet))
    FIN

    FIN

    Merci de vérifier mon code
     
    Tags:
  2. Fakirato

    Fakirato New Member
    WXG24 MEMBRE WX WXG 23 WXG 22 WXG 21

    Inscrit:
    Déc 30, 2017
    Messages:
    302
    J'aime reçus:
    816
    Bonjour

    utiliser cette fonction au lieux de BufferVersHexa
    Code (Windev):

    MonBuffer est un Buffer
    MonBuffer =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ScanDoc.Image)
     
     
    joker apprécie ceci.
  3. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Bonjour Fakirato

    Ca marche pas la fonction FchargeBuffer() Renvoie le vide

    Dans mon code j'ai changé ImageHexa est un Buffer par ImageHexa est une chaine et ca marche car la rubrique qui recoit le buffer est une chaine
     
  4. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Je veux convertir toutes les images de mon fichier pour la rubrique photo de type image vers une rubrique de type chaine en hexadecimal
    Je met ce code ci- dessous mais le résultat ne me permet pas l'utilisateur de consulter leurs photos


    POUR TOUT ScanDoc
    SI ScanDoc.Image<>"" ALORS
    ImageHexa est un chaîne
    ImageHexa =BufferVersHexa(ScanDoc.Image)
    ScanDoc.DocumentScanné =ImageHexa
    SI PAS HModifie(ScanDoc)ALORS
    Info(HErreurInfo(hErrComplet))
    FIN
    FIN
    FIN

    Résultat donnée est faux

    FF D8 FF E1 22 E4 45 78 69 66 00 00 4D 4D 00 2A
    00 00 00 08 00 0C 01 00 00 03 00 00 00 01 05 14
    00 00 01 01 00 03 00 00 00 01 04 11 00 00 01 02
    00 03 00 00 00 03 00 00 00 9E 01 06 00 03 00 00
    00 01 00 02 00 00 01 12 00 03 00 00 00 01 00 01
    00 00 01 15 00 03 0
    au lieu de
    46 69 62 5F 44 65 76 65 6C 6F 70 65 6D 65 6E 74 2E 6A 70 67 //Bon Résulta

    Merci de me donner une piste

    PS :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Tes 2 discussions ont été fusionnées :)
     
    #4 Mohamed, Juin 14, 2018
    Dernière édition par un modérateur: Juin 14, 2018
  5. irobot

    irobot Active Member
    MEMBRE WX

    Inscrit:
    Jan 10, 2018
    Messages:
    143
    J'aime reçus:
    131

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour

    Dans mon fichier j'ai 2 rubriques (Image de type image et l'autre de type chaine de traille =264)
    je veux convertir tout mes images vers la rubrique de type chaine c'est pour cela j'ai mis ce code ci dessous mais ca marche pas. Toujours ImageHexa reçoit le vide

    ImageHexa est un Buffer
    POUR TOUT ScanDoc

    ImageHexa =BufferVersHexa(ScanDoc.Image)
    ScanDoc.DocumentScanné =ImageHexa

    SI PAS HModifie(ScanDoc)ALORS
    Info(HErreurInfo(hErrComplet))
    FIN

    FIN

    Merci de vérifier mon code
    Cliquez pour agrandir...
    salut.
    alors, que les choses soient claires, ca va être difficile de de faire rentrer une image dans un champs texte! une image, par definition, ca a une taille variable ( de quelques octets à plusieurs méga). c'est pour ca qu'elle est est stockée dans un champs mémo ( dant la taille / enregistrement peut $etre variable). De plus, une image, c'est du code binaire dans le sens ou elle peut contenir des caractères non affichable ( voire null!) qui ne sont pas gérés dans un champs texte.


    si tu veux "sortir" ton image du fichier, il faut la sauvegarder dans un chemin donné et stocker ce chemin.

    sans plus de précision, ca va être compliquer de t'aider ...
     
    joker et Fakirato aiment ça.
  • rezak

    rezak New Member
    DUMP TEAM

    Inscrit:
    Jan 22, 2018
    Messages:
    7
    J'aime reçus:
    5
    bonsoir,
    bufFichier est un Buffer

    // Ouverture du fichier
    bufFichier = fChargeBuffer("C:\Users\rezak\Pictures\123.png")
    img est une chaîne = BufferVersHexa(bufFichier)

    IMG_SansNom1= HexaVersBuffer(img) //visualiser l'image champ image
    fSauveBuffer("C:\Users\rezak\Pictures\123_1.png",HexaVersBuffer(img)) // sauvegarder image en hexa vers binaire au cas ou..
     
    joker apprécie ceci.
  • Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Merci rezak

    Je cherche non plus de convertir une image depuis "c:" mais plutôt depuis mon fichier.fic voir mon code ci dessus

    Merci également irobot

    Nom au contraire j'ai réussi à stocker une image depuis une liste d'images vers mon fichier.fic dans un rubrique de type texte et tout s'était bien passé.
    Actuellement je veux convertir mes anciennes images de mon fichier vers cette rubrique celle de type de texte.
    Peut être , le contenu d'une rubrique image est différent d'un champ image c'est pour cela j'ai ce souci.

    Version 23, mais mon projet est en V21
     
    #7 Mohamed, Juin 15, 2018
    Dernière édition par un modérateur: Sept 18, 2018
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,961
    J'aime reçus:
    1,575

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Version 23, mais mon projet est en V21
    Cliquez pour agrandir...
    tu peux donc le réouvrir en 22 pour avoir la fonction encode
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,961
    J'aime reçus:
    1,575

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Merci également irobot

    Nom au contraire j'ai réussi à stocker une image depuis une liste d'images vers mon fichier.fic dans un rubrique de type texte et tout s'était bien passé.
    Actuellement je veux convertir mes anciennes images de mon fichier vers cette rubrique celle de type de texte.
    Peut être , le contenu d'une rubrique image est différent d'un champ image c'est pour cela j'ai ce souci.
    Cliquez pour agrandir...
    Déjà avoir choisi une rubrique texte au lieu de mémo texte ou mémo binaire pour contenir une image est une erreur car il n'est pas possible de déterminer la taille de la rubrique.
    qu'as tu utilisé pour enregistré ton image?
    De plus que veux tu dire par tout c'est bien passé ?
    en tout cas tu peux retrouvé l'extension
    voir

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
  • Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    HLitPremier(PRODUIT)
    Res est une chaîne = Encode(fChargeBuffer(PRODUIT.Photo), encodeBASE64)

    je trouve que la fonction cherche par défaut mon image dans le chemin c:, en revanche je précise à windev que ma photo est se trouve dans le fichier produit

    Message d'erreur : Impossible de trouver le fichier dans c:......
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,961
    J'aime reçus:
    1,575
    le encode ne peut fonctionner car c'est pour convertir un fichier en texte
    or toi c'est une rubrique texte "contenant" une image a convertir en fichier.
    lis mon message précédent.
     
  • Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Merci popy
    Tout était bien passé : Dans une liste d'image qui contient plusieurs phots, je sélectionné une photo puis je l'enregistre dans une chaine de texte en format hexadécimal puis je la consulte il m'affiche mon photos en format image
     
    Fakirato apprécie ceci.
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,961
    J'aime reçus:
    1,575

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Merci popy
    Tout était bien passé : Dans une liste d'image qui contient plusieurs phots, je sélectionné une photo puis je l'enregistre dans une chaine de texte en format hexadécimal puis je la consulte il m'affiche mon photos en format image
    Cliquez pour agrandir...
    donc maintenant il faut faire l'inverse:
    A partir de l'hexa le remettre en image.
    donc si a l'origine tu as utilisé buffervershexa, maintenant l'inverse est hexaversbuffer.
     
    Fakirato apprécie ceci.
  • Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Ma rubrique "DocumentScan" de type chaine est encore vide, par contre la rubrique "Photo" contient l'image "boisson Coca"
    Mon objectif est de remplir documentScan (Chaine) par le contenu de rubrique Photo de type image
    J'espère bien que mon cas sera claire.
     
  • aminej76

    aminej76 Active Member
    MEMBRE WX

    Inscrit:
    Jan 23, 2018
    Messages:
    283
    J'aime reçus:
    102
    Quel est ton objectif ? Quel est l’intérêt de convertir une image vers une chaine ?
    Pourquoi ne pas définir une rubrique de type image mémo et stocker l'image.
     
    #15 aminej76, Juin 15, 2018
    Dernière édition: Juin 15, 2018
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,961
    J'aime reçus:
    1,575

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Ma rubrique "DocumentScan" de type chaine est encore vide, par contre la rubrique "Photo" contient l'image "boisson Coca"
    Mon objectif est de remplir documentScan (Chaine) par le contenu de rubrique Photo de type image
    J'espère bien que mon cas sera claire.
    Cliquez pour agrandir...
    Ta rubrique DocumentScan doit être en mémo texte et utilisé encode en base 64.
    mais je suis d'accord avec

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    .
    si tu as déjà une rubrique photo, je ne vois pas l'intérêt du mémo texte.
     
    aminej76 apprécie ceci.
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,961
    J'aime reçus:
    1,575

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Toujours ca marche pas
    Cliquez pour agrandir...
    Sans plus d'informations , difficile de t'aider.

    pour info Philippe a t'a donner une réponse intéressante de la raison pour laquelle sa ne fonctionne pas voir table ASCII

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
    #17 popoy, Juin 19, 2018
    Dernière édition par un modérateur: Nov 8, 2018
    irobot apprécie ceci.
  • Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Merci popy
     
  • Partager cette page

    Chargement...