我是新手。我正在尝试wilchit sombat制作packman的游戏教程。我无法查看BufferedImage
。以下是覆盖游戏引擎中某些方法的代码。
package game.packman;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.Game.Engine.Game;
import org.Game.Engine.GameApplication;
public class PackMan extends Game {
public static void main(String args[]) {
GameApplication.start(new PackMan());
}
BufferedImage packman;
public PackMan() {
title = "PACKMAN";
width = height = 400;
try {
packman = ImageIO.read(new File("images/pacmanimg.xcf"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void init() {
// TODO Auto-generated method stub
}
@Override
public void update() {
// TODO Auto-generated method stub
}
@Override
public void draw(Graphics g) {
g.drawImage(packman, 100, 100, null);
}
}
答案 0 :(得分:4)
Image I/O
内置了对GIF, PNG, JPEG, BMP, and WBMP
的支持。图像I / O也是可扩展的,因此开发人员或管理员可以“插入”对其他格式的支持。例如,TIFF
和JPEG 2000
的插件可单独使用。
因此,XCF
似乎不支持GIMP
ImageIO
图片编辑程序的原生图片格式。
<强>参考:强>
答案 1 :(得分:0)
贷款后检查图像packman
的大小
packman = ImageIO.read(new File("images/pacmanimg.xcf"));
如果未加载图像,则为0宽度/高度。
无论如何,最好将图像放在类路径中,并使用getResourceAsStream()通过ImageIO加载它。在相反的情况下,当您将代码打包在jar中时,您需要解决使用文件和相对路径问题。