Java裁剪图片?

时间:2014-08-09 06:54:24

标签: java image-processing

我试图从图片中获取一个部分。

从初始图片中,如何将下面的第1部分作为图片本身返回?

而不是整个4个方格。

enter image description here

简而言之,我不想从基本图像中获得一个64 x 64像素大小的矩形。

我应该怎么做?

2 个答案:

答案 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