具有透明位图

时间:2016-11-15 06:04:03

标签: android android-canvas android-bitmap flood-fill

我正致力于使用填充算法填充位图部分颜色的颜色填充应用。

当我使用带有背景的位图时,它可以正常工作,但是当我使用透明背面的位图时,它会在整个背景上填充颜色。我不知道如何解决它。 Image with transparent back

这是返回可绘制转换位图的块 -

    private Bitmap getBitmap(){
        BitmapFactory.Options options = new BitmapFactory.Options();
        options.inPreferredConfig = Bitmap.Config.ARGB_8888;
        imageBitmap = BitmapFactory.decodeResource(getResources(),
        R.drawable.image2,options);
        return imageBitmap;
    }
下面的

是我的onTouch事件代码,我通过了运行泛洪填充 -

    case MotionEvent.ACTION_DOWN:
            pixelColor = canvasBitmap.getPixel((int)touchX,(int)touchY);
            System.out.println("touch color" + pixelColor);
            Point p = new Point((int)touchX,(int)touchY);
            if(!targetColorSet.contains(pixelColor)) {
                floodFillTask = new FloodFillTask(canvasBitmap, p,
                  paintColor, targetColor);
                floodFillTask.execute();
            }
        break;

我使用Queue Linear Flood填充来填充。

0 个答案:

没有答案