我正在尝试创建一个图像编写器,它将读取模板图像,然后在其上写入文本,然后使用新文本创建一个新图像。出于某种原因,当我的代码对我来说很好时我会收到错误。以下是代码:
public class GUI extends JFrame{
private JPanel p1 = new JPanel();//Puts tiles in, and organizes them for you
private JPanel p2 = new JPanel();//Holds trash tiles
JLabel ll = new JLabel();
//private JPanel p3 = new JPanel();//Holds trash tiles
public GUI(){
this.setTitle("Tile Game");
this.setSize(600,600);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
try {
createTile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
this.add(ll);
}
public void createTile() throws IOException{
final BufferedImage image = ImageIO.read(getClass().getResource("/src/tile.png"));
//File outPut = new File("saved.png");
Graphics g = image.getGraphics();
g.setFont(g.getFont().deriveFont(30f));
g.drawString("Hello World!", 100, 100);
g.dispose();
ImageIO.write(image, "png", new File("/src/test2.png"));
final BufferedImage image2 = ImageIO.read(new File("/src/test2.png"));
ImageIcon icon1 = new ImageIcon(image2);
ll.setIcon(icon1);
p1.add(ll); }
}
当我运行上面的代码时,我最终得到了这些错误:
GUI.<init>() line: 36
Start.main(String[]) line: 7
我不明白为什么我也被要求调试GUI构造函数......这对我来说似乎完全正常。
答案 0 :(得分:0)
您的图片位置不合适! (忽略其他类,它只是一个测试项目^^)
在你的eclipse项目中创建一个文件夹,但不要在你的SOURCE目录(!!!)中,然后参考这样的图像:
Image img1 = Toolkit.getDefaultToolkit().getImage("img/index.png");