如果要使白色部分不可见,最好的方法是使用图像滤镜并使白色像素透明,@ 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 ;}


