我在显示 PNG 图像时遇到问题,而 JPG 图像显示得很好。
这是获取 Image 的代码。
Image tImage=Image.createImage("/tasbeeh.jpg");
然后绘制图像,但为 png
Image tImage=Image.createImage("/tasbeeh.png");
抛出异常:
java.lang.NullPointerException:
at start.SplashScreen.paint(+56)
at javax.microedition.lcdui.Canvas.callPaint(+85)
at javax.microedition.lcdui.Display.repaint(+82)
和
java.io.IOException
at javax.microedition.lcdui.ImmutableImage.getImageFromStream(+15)
at javax.microedition.lcdui.ImmutableImage.<init>(+20)
at javax.microedition.lcdui.Image.createImage(+8)
最佳答案
我假设您得到的异常是 IllegalArgumentException,
如果第一个参数的格式不正确或无法解码,则会抛出 IllegalArgumentException。
因此,您很可能会因图像格式不受支持或数据被截断而收到错误。
更新
从流中获取图像 throw : IOException - 如果流出现错误
因此,来自该 png 的数据流未按预期格式化,就像我说的图像格式不受支持或数据被截断。
您应该尝试使用 Paint.net 或 Photoshop 等图形程序,并保存为具有不同位格式的 PNG。
我希望这会有所帮助。
关于java - 在J2me中显示Png图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9361324/