我试图从图片中获取一个部分。
从初始图片中,如何将下面的第1部分作为图片本身返回?
而不是整个4个方格。
简而言之,我不想从基本图像中获得一个64 x 64像素大小的矩形。
我应该怎么做?
答案 0 :(得分:4)
试试这个
BufferedImage tile = mImage.getSubimage(x, y, w, h);
其中x和y是你的起始坐标,w:宽度和h:子图像的高度 因此,要获得第一个方格,您的值将是x = 0,y = 0,w = 64,h = 64
答案 1 :(得分:4)
您可以尝试这样:
BufferedImage img= ImageIO.read(new File("image.png"));
final int w= 10;
final int h= 10;
final int rows = 5;
final int cols = 5;
BufferedImage[] tile= new BufferedImage[rows * cols];
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
tile[(i * cols) + j] = img.getSubimage(
j * w,
i * h,
w,
h
);
}
}
您可以查看getSubimage