Java 将BuffereImage转换为HBITMAP
我需要将Java BuffereImage转换为HBITMAP 到目前为止,我已经分配了此操作所需的内存,但我不知道必须使用哪些API函数将BuffereImage转换为hBitmapJava 将BuffereImage转换为HBITMAP,java,windows,winapi,java-native-interface,jna,Java,Windows,Winapi,Java Native Interface,Jna,我需要将Java BuffereImage转换为HBITMAP 到目前为止,我已经分配了此操作所需的内存,但我不知道必须使用哪些API函数将BuffereImage转换为hBitmap int width = myImage.getWidth(); int height = myImage.getHeight(); Pointer myImageHdc = gdi32.CreateCompatibleDC(Pointer.NULL); Pointer myImageBitmap = gdi
int width = myImage.getWidth();
int height = myImage.getHeight();
Pointer myImageHdc = gdi32.CreateCompatibleDC(Pointer.NULL);
Pointer myImageBitmap = gdi32.CreateCompatibleBitmap(myImageHdc, width, height);
gdi32.SelectObject(myImageHdc, myImageBitmap);
有什么想法吗?谢谢。您不可能简单地将BuffereImage内部表示复制到HBITMAP的内部表示;充其量,您可能能够从一个像素块获取整数值,并将其传递给另一个像素块。请参阅BuffereImage.getRaster().getPixels()了解一种提取方法。您不可能简单地将BuffereImage内部表示复制到HBITMAP的内部表示;充其量,您可能能够从一个像素块获取整数值,并将其传递给另一个像素块。有关一种提取方法,请参见BuffereImage.getRaster().getPixels()。