加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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

发布时间:2020-12-14 14:48:23 所属栏目:Java 来源:网络整理
导读:在 java中自动裁剪白色边框的图片最简单的方法是什么?提前致谢… 解决方法 如果你想让白色的部分看不见,最好的方法是使用图像滤镜,使白色像素透明,这是由@PhiLho提供的一些很好的样品是 discussed here, 如果你想调整你的图像大小,它的边框不会有白色的颜色
在 java中自动裁剪白色边框的图片最简单的方法是什么?提前致谢…

解决方法

如果你想让白色的部分看不见,最好的方法是使用图像滤镜,使白色像素透明,这是由@PhiLho提供的一些很好的样品是 discussed here,
如果你想调整你的图像大小,它的边框不会有白色的颜色,你可以用四个简单的循环,
我为你写的这个小方法是诀窍,请注意,它只是裁剪图像的上半部分,你可以写其余的,
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,upperBorder*-1,null) ;

    return destination ;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读