1

私はこのような1つの機能を持っているアプリを開発し ていますこのコードでこれを行いました

消去したビットマップを保存して保存したい

実際、キャンバスにビットマップがロードされています最初の画面

今、私はこのようにビットマップを消去しようとしています(透明キャンバスに追加

そして、ユーザーが保存を押すと、これだけが出力されなければなりません(.png として保存) これは私のOnDrawメソッドです

protected void onDraw(キャンバス キャンバス) {

canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint);
    c2.drawBitmap(Bitmap2, 0, 0, mBitmapPaint);
    canvas.drawBitmap(Transparent, 0, 0, null);
        //  c2.drawBitmap(mBitmap, 0, 0, mBitmapPaint);
            for (PathPoints p : paths) {
                mPaint.setColor(p.getColor());
                Log.v("", "Color code : " + p.getColor());
                if (p.isTextToDraw()) {
                    canvas.drawText(p.textToDraw, p.x, p.y, mPaint);
                } else {
                    // if(isTouched)
                            c2.drawPath(p.getPath(), mPaint);

                }

            }
        }

そして、ボタンを保存します

Bitmap editedImage = Bitmap.createBitmap(drawView
                        .getDrawingCache());
                editedImage = Bitmap.createScaledBitmap(editedImage, 200, 300,
                        true);

しかし、これは私に完全な画像(最初のスクリーンショット)しか与えません。コード全体を見ることができます

4

0 に答える 0