Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将BuffereImage转换为HBITMAP_Java_Windows_Winapi_Java Native Interface_Jna - Fatal编程技术网

Java 将BuffereImage转换为HBITMAP

Java 将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

我需要将Java BuffereImage转换为HBITMAP

到目前为止,我已经分配了此操作所需的内存,但我不知道必须使用哪些API函数将BuffereImage转换为hBitmap

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()。