Bonjour,
Mon précédent travail a été de convertir des objets TBitmap en String pour les stocker dans des fichiers XML, puis de les recharger. Voir ce sujet : http://www.developpez.net/forums/sho...d.php?t=147078
En voulant faire la même chose avec un TGraphic (pour utiliser des fichiers JPG, GIF, etc.), j'obtiens l'erreur suivante :
qui se produit à la ligne suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Uneven size in Encode
Après quelques recherches sur le net, j'ai cru comprendre que ceci était plutôt un bug du composant TIdEncoderMIME mais qu'il devait être possible de le contourner en modifiant à la main la taille à encoder. Malheureusement j'ai été incapable de trouver un exemple de code pour le faire. Qqn peut-il m'aider ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part monString := Encode(stream, stream.size) ;
Voici le code actuel :
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 stream : TStringStream ; Result : String ; ... uneImage.Graphic.SaveToStream(stream) ; try stream.Seek(0, soFromBeginning) ; With TIdEncoderMIME.Create(nil) do try Result := Encode(stream, stream.size); //<-- erreur là finally stream.Free; end ; (...) end ;
Partager