使用g.drawImage(img,0,0,100,100,0,0,0,0,null)时它不会产生任何结果?

时间:2010-02-23 05:15:55

标签: java file

使用g.drawImage(img,0,0,100,100,0,0,0,0,null)时,它不会产生任何结果。那么如何以更好的方式在文件中绘制图像?

3 个答案:

答案 0 :(得分:0)

drawImage方法中的最后一个参数是ImageObserver。提供有效的ImageObserver实现,并检查重写的imageUpdate方法是否更新图像。

从那里开始使用适当的调试,你可以找出未绘制的原因

答案 1 :(得分:0)

从g.drawImage开始(img,x,y,observer);看看你有没有得到任何东西。注意,ImageObserver可以为null。

确保已加载img。

此外,请确保Graphics或Graphics2D对象引用您可以查看或验证其内容的内容。例如,如果它是JPanel,请确保它没有隐藏等。或者,如果您正在绘制另一个图像,请尝试使用ImageIO.write将图像写入文件(img,“jpg”,new File(“ test.jpg“))或类似的东西。

答案 2 :(得分:0)

除了确保加载图像之外,最后4个int参数是源x,y,宽度,高度...在指定0,0,0,0时你要求API绘制一个0x0矩形的从0,0开始的图像 - 这应该什么都不画。你可能想要这些0,0,100,100,或者使用没有指定两组坐标的重载。