如何在Java中自动裁剪图像白色边框?

Java中,从图像中自动裁剪出白色边框的最简单方法是什么?提前致谢…

回答:

如果要使白色部分不可见,最好的方法是使用图像滤镜并使白色像素透明,@ PhiLho

在此处讨论了一些很好的示例,如果要调整图像大小以免边框没有白色颜色,您可以通过四个简单的循环来完成此操作,我为您编写的这个小方法可以解决问题,请注意,它仅裁剪图像的上部,其余部分可以编写,

    private Image getCroppedImage(String address) throws IOException{

BufferedImage source = ImageIO.read(new File(address)) ;

boolean flag = false ;

int upperBorder = -1 ;

do{

upperBorder ++ ;

for (int c1 =0 ; c1 < source.getWidth() ; c1++){

if(source.getRGB(c1, upperBorder) != Color.white.getRGB() ){

flag = true;

break ;

}

}

if (upperBorder >= source.getHeight())

flag = true ;

}while(!flag) ;

BufferedImage destination = new BufferedImage(source.getWidth(), source.getHeight() - upperBorder, BufferedImage.TYPE_INT_ARGB) ;

destination.getGraphics().drawImage(source, 0, upperBorder*-1, null) ;

return destination ;

}

以上是 如何在Java中自动裁剪图像白色边框? 的全部内容, 来源链接: utcz.com/qa/421826.html

回到顶部