Java 在点(x,y)周围将照片裁剪为600x600

Java 在点(x,y)周围将照片裁剪为600x600,java,logic,crop,Java,Logic,Crop,我的程序需要一些逻辑上的帮助。我需要在点(x,y)周围裁剪一张600x600的照片。我需要帮助的是,当点靠近边缘时,如何移动裁剪区域,使其适合照片内部 我有密码: BufferedImage finalImg = capture.getSubimage(Math.max( 0, x - 300 ), Math.max( 0, y - 300 ), 200, 200 ); 就我所见,代码适用于顶部和左侧,但我不知道如何在底部和右侧获得相同的效果 如果有帮助,我想捕获屏幕并在鼠标(x,y)周围裁剪

我的程序需要一些逻辑上的帮助。我需要在点(x,y)周围裁剪一张600x600的照片。我需要帮助的是,当点靠近边缘时,如何移动裁剪区域,使其适合照片内部

我有密码:

BufferedImage finalImg = capture.getSubimage(Math.max( 0, x - 300 ), Math.max( 0, y - 300 ), 200, 200 );
就我所见,代码适用于顶部和左侧,但我不知道如何在底部和右侧获得相同的效果

如果有帮助,我想捕获屏幕并在鼠标(x,y)周围裁剪照片

多谢各位

BufferedImage originalImage = readImage(inputFileLocation);

/**
* Image Cropping Parameters
*/
int cropHeight = 600;
int cropWidth = 600;
int cropStartX = 50;
int cropStartY = 50;

BufferedImage processedImage = cropMyImage(originalImage, cropWidth,
cropHeight, cropStartX, cropStartY);

坦克的有用链接。这并不是100%起作用,因为我会根据光标的位置得到不同的大小。够好了:)