Java图形图像

时间:2012-10-25 21:50:31

标签: java image graphic

嘿,我在Jpanel中添加了以下图片:msu-footprints.org/2011/Aditya/map.jpg

然后添加多边形

int[] x = new int[]{65, 122, 77, 20}; 
int[] y = new int[]{226, 258, 341, 310}; 
g.setColor(Color.RED); 
g.drawPolygon(x, y, x.length); 

多边形应与建筑物GER重合,但有点偏移。我的专业说,坐标是可以的。如何放置图像位置有什么问题吗? -

1 个答案:

答案 0 :(得分:2)

如果直接绘制到顶级容器(JFrame),那么 坐标空间会出错,实际上是内容窗格 偏移,考虑到框架的边框和菜单栏。

如果您覆盖任何框架的paint方法或使用getGraphics方法,则会发生这种情况。

JFrame showing coords of origin and (offset) content

创建一个自定义组件(从JPanel扩展)并覆盖它的paintComponent方法,并将图像和矩形直接渲染到它。然后坐标空间是正确的(顶部,左角将是0x0)