0
我選擇了一個onTouch路徑並強制關閉它。然後,我裁剪路徑中的圖像,並重新繪製原始圖像的模糊版本。 但邊緣看起來非常尖銳。我希望模糊性能以越來越高的速度達到極限。Android:如何淡出任何形狀的封閉路徑?
void blurIt() {
if(path.isEmpty()) {
Toast.makeText(getContext(),"Selection is EMPTY",Toast.LENGTH_LONG).show();
return;
}
Bitmap tmp = Bitmap.createBitmap(MainActivity.rawBitmap.getWidth(),MainActivity.rawBitmap.getHeight(),MainActivity.rawBitmap.getConfig());
Canvas c = new Canvas(tmp);
paintRaw = new Paint();
paintRaw.setAntiAlias(true);
c.drawPath(pathReal,paintRaw);
paintRaw.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
c.drawBitmap(MainActivity.rawBitmap,0,0,paintRaw);
canvas.drawBitmap(tmp,0,0,null); //blurred bitmap is set in canvas previously
setImageBitmap(MainActivity.blurBitmap);
}
你需要兩個'Canvas'es嗎? – pskink
本地一個用於創建裁剪部分,另一個用於繪製最終位圖 –
使用BitmapShader和BlurMaskFilter代替 – pskink