JNI - Obtenir une image Java à partir d'une image Windows - Java - Programmation
Marsh Posté le 06-06-2003 à 11:13:59
Heu, je pense pas que t'ai directementune fonction java qui te fasse ça. Ce que tu peux faire c générer un tableau d'octets à partir de ton HBitmap (me semble que ça se fait mais c à vérifier) qui va représenter ton image. Ensuite t'as plus qu'à cerhcer si y a un moyen de créer ton objet java à partir de ça.
Marsh Posté le 06-06-2003 à 12:04:58
Moi je pense qu'il existe déja des fonction JNI qui font ça. Parce que, à ma connaissance, sous windows, pour afficher quoi que ce siot de graphique, il doit être au format HBitmap (je suis pas sur à 100% mais je pense)
Marsh Posté le 06-06-2003 à 12:27:49
SAlut El Gringo...
Rien a voir avec ton poste...une boite veut valider mes references et me demande des contacts de mes anciens responsables.
Je me rappel plus le nom d'eric
Peut tu me l'envoyer par mail à vpenalva@chello.fr
Sympa merci
Bientot!!
Marsh Posté le 06-06-2003 à 12:40:46
El_gringo a écrit : Moi je pense qu'il existe déja des fonction JNI qui font ça. Parce que, à ma connaissance, sous windows, pour afficher quoi que ce siot de graphique, il doit être au format HBitmap (je suis pas sur à 100% mais je pense) |
Qq part en interne ouai, mais ça m'étonerais que tu y ai accés.
Marsh Posté le 06-06-2003 à 14:06:23
LetoII a écrit : |
Ouais, en interne, c'est sur que la JVM sait traiter les images HBitmap, et pour preuve :
Code :
|
Cette structure permet de dessiner dans une surface avec la JVM, depuis un pogramme C/C++.
L'image est décrite dans un HBitmap.
C'est terriblement frustrant, d'autant plus que je n'pense même pas pouvoir regarder les sources de ça, puisqu'elle doivent être compilées !!!
Marsh Posté le 06-06-2003 à 14:13:09
Hé, mais j'y pense, c'est peut être ça ma solution :
si je trouve un moyen générer une RenderedImage représentant le contenu d'un Caneva, c'est gagné...
Marsh Posté le 07-06-2003 à 18:21:36
un HBITMAP, c'est jamais qu'un pointeur vers une structure contenant un en-tete (BITMAPINFOHEADER ou un truc du genre) et un tableau d'octet représentant tes pixels. Donc je pense que le truc c'est d'essayer de récupérer les infos du header et le tableau d'octets pour refaire une image avec tout ça.
Marsh Posté le 05-06-2003 à 17:24:33
Je doute qu'ici qui que ce soit puisse m'aider là dessus, mais bon, essayons toujours...
Alors voila, depuis une dll C, je génère une image (ou plutôt, je récupère une image générée par un code obscure). Etant sous windows, cette image est au format "standard" des images sous windows, à savoir : HBitmap (qui n'est pas à proprement parler un format, mais bref, on va se permettre de considérer que si). Je cherche, depuis ce HBitmap, à générer un image Java (classe java.awt.image.RenderedImage). Je suis à peu près sur que c'est possible, puisque l'awt comporte une partie native, c'est à peu près sur qu'il bosse avec des HBitmap, mais je n'arrive pas trop pour l'instant à trouver comme faire ce dont j'ai besoin.
En Bref : je voudrais obtenir une Image Java (RenderedIMage), depuis une image C Windows (HBitmap). Quelqu'un sait il qqch là dessus ?