如何检查Android上的位图是否为空(空白)

时间:2015-02-27 14:32:09

标签: android bitmap android-bitmap

如何检查Bitmap对象是否完全空白,即所有像素都是透明的,每个像素上都没有x-y循环?

3 个答案:

答案 0 :(得分:30)

您可以使用以下命令检查位图实例(在示例myBitmap中)中是否为空

Bitmap emptyBitmap = Bitmap.createBitmap(myBitmap.getWidth(), myBitmap.getHeight(), myBitmap.getConfig());
if (myBitmap.sameAs(emptyBitmap)) {
    // myBitmap is empty/blank
}

答案 1 :(得分:0)

您可以非常轻松地完成此操作,但这取决于应用程序。 如果您有一个提示用户输入图形输入(例如签名或类似内容)的应用程序,则通常会有一个ArrayList of Paths绘制到该视图的Canvas中。您可以在想要返回BitMap外观时进行检查,以查看Path的ArrayList是否大于0,如果大于0,则返回BitMap,否则返回null。

答案 2 :(得分:-1)

这不是解决问题的有效方法,但确实可以解决问题 因为即使在文档

中,我也找不到解决方案

请参见位图为空时,无法获取其宽度或高度,这会导致崩溃,因此这里可以解决您的问题

       try{
                   int check=bitmap.getWidth();

              // the bitmap is valid & not null or empty 

               }catch (Exception w){
                  // the bitmap, not valid eighter null or empty

               }

希望这会有所帮助:)