6

我有一个大缓冲区图像。

我想用第一个缓冲区的数据创建另一个缓冲区图像

我试着做raster一个buffer.getData(new Rectangle(x,y,width,height))

接着buffer2.setData(raster)

但由于数据由 x,y 而不是 0,0 转换的原因。例如,如果我在原始 x,y 处有一个像素,我仍将在新像素中的 x,y 处拥有它而不是 0,0因为 x,y 是矩形的平移位置。

那么有没有办法正确翻译光栅或者是否有更好的解决方案来复制图像?

编辑:我也设法做到了getGraphics().drawImage()。有一种方法可以通过定义它们的角来定义 2 个矩形。但是下面的方法更好,因为它不会透支。

Edit2:似乎子图像已连接到原始图像,是否有另一种方法可以使用实际原始的剪切数据和尺寸创建缓冲图像?

4

1 回答 1

14

Java子图像应该适合你..试试;

imageTwo = imageOne.getSubimage(x, y, width, height);

希望能帮助到你 :-)

于 2012-06-29T12:31:46.683 回答