Java me 正在尝试创建DvbBufferedImage,但其宽度和高度为0

Java me 正在尝试创建DvbBufferedImage,但其宽度和高度为0,java-me,xlet,blu-ray,Java Me,Xlet,Blu Ray,我试图通过更改图像的alpha值,为我的BD-J应用程序使用DvbBufferedImage创建淡入动画 doubleBuffer = new DVBBufferedImage(1920, 2180, DVBBufferedImage.TYPE_ADVANCED); 但在创建缓冲区后,其宽度和高度为0,当我尝试获取图形时: DVBGraphics bufferGraphics = doubleBuffer.createGraphics(); 它返回null 之后,我想在缓冲区上绘制图像,得到

我试图通过更改图像的alpha值,为我的BD-J应用程序使用DvbBufferedImage创建淡入动画

doubleBuffer = new DVBBufferedImage(1920, 2180, DVBBufferedImage.TYPE_ADVANCED);
但在创建缓冲区后,其宽度和高度为0,当我尝试获取图形时:

DVBGraphics bufferGraphics = doubleBuffer.createGraphics();
它返回null

之后,我想在缓冲区上绘制图像,得到
NullPointerException
。 你有什么建议吗? 我认为这与我的库有关,因为当我使用以下代码将
DvbBufferedImage
替换为
BufferedImage
时:

protected BufferedImage bufImage = new BufferedImage(1920, 2180, BufferedImage.TYPE_INT_ARGB );
它说:

构造函数BuffereImage(int,int,int)未定义

我提到我正在使用定制的eclipse开发Bd-j应用程序,我的java版本是
jre1.8.0\u 77

用于此应用程序的类别如下所示:

basis.jar
btclasses.zip
j2me_xml_cdc.jar
javatv.jar
jsse-cdc.jar
pbp_1_0.jar
SonicBDJ.jar

我们将感谢您在这个问题上的帮助,提前谢谢

这可能与内存问题有关

根据规范,蓝光播放器只需要4 mb内存。这包括当前加载的实际JAR文件的空间。因此,如果您使用的是高质量的1920x2180像素的图像,那么您的JAR可能已经占用了1-2MB的空间。然后将该图像加载到内存中可能会导致
OutOfMemoryException
,这意味着不会加载该图像,这就是为什么会出现
NullPointerException


蓝光光盘Java是JavaME。我们正在处理一个有限的平台

这可能与内存问题有关

根据规范,蓝光播放器只需要4 mb内存。这包括当前加载的实际JAR文件的空间。因此,如果您使用的是高质量的1920x2180像素的图像,那么您的JAR可能已经占用了1-2MB的空间。然后将该图像加载到内存中可能会导致
OutOfMemoryException
,这意味着不会加载该图像,这就是为什么会出现
NullPointerException


蓝光光盘Java是JavaME。我们正在处理一个有限的平台

1920x2180
?这是什么样的分辨率?我想用这个1920x2180图像作为我的地图,将它加载到一个缓冲区(dvbbufferedimage of BuffereImage),然后将它的一部分绘制到这个缓冲区并生成我的最终图像。然后我使用该图像运行动画(通过更改其alpha值)
1920x2180
?这是什么样的分辨率?我想用这个1920x2180图像作为我的地图,将它加载到一个缓冲区(dvbbufferedimage of BuffereImage),然后将它的一部分绘制到这个缓冲区并生成我的最终图像。然后我使用该图像运行动画(通过更改其alpha值)