امروز : یکشنبه ۲۶ آذر ۱۳۹۶

شماره های تماس با ما

(10خط)     33333145 - 013



بلار کردن تصاویر در برنامه نویسی اندروید


بلار کردن تصاویر در برنامه نویسی اندرویدReviewed by هیات علمی پل گیلان on Jan 22Rating:

در ادامه مقالات آموزش برنامه نویسی اندروید از مجتمع آموزشی پل گیلان ، کار با عکس و نحوه اعمال افکت بلار عکس در اندروید بپردازیم. در ابتدا باید تنظیمات کتابخانه رندر اسکریپت را در گردل انجام دهیم که به ترتیب زیر است.

android {

defaultConfig {

renderscriptTargetApi 19

renderscriptSupportModeEnabled true

}

}

سپس کلاس زیر را به پروژه خود اضافه کنید و (package android.support.v8.renderscript.*) را  به پروژه خود ایمپورت کنید.

 


public class BlurBuilder {
private static final float BITMAP_SCALE = 0.4f;
private static final float BLUR_RADIUS = 7.5f;

public static Bitmap blur(Context context, Bitmap image) {
int width = Math.round(image.getWidth() * BITMAP_SCALE);
int height = Math.round(image.getHeight() * BITMAP_SCALE);

Bitmap inputBitmap = Bitmap.createScaledBitmap(image, width, height, false);
Bitmap outputBitmap = Bitmap.createBitmap(inputBitmap);

RenderScript rs = RenderScript.create(context);
ScriptIntrinsicBlur theIntrinsic = ScriptIntrinsicBlur.create(rs, Element.U8_4(rs));
Allocation tmpIn = Allocation.createFromBitmap(rs, inputBitmap);
Allocation tmpOut = Allocation.createFromBitmap(rs, outputBitmap);
theIntrinsic.setRadius(BLUR_RADIUS);
theIntrinsic.setInput(tmpIn);
theIntrinsic.forEach(tmpOut);
tmpOut.copyTo(outputBitmap);

return outputBitmap;
}
}

 

نتیجه کد بالا یه عکس بلار شده با فرمت بی ام پی است که میتواند به شکل زیر در برنامه نویسی اندروید فراخوانی کنید.

 

Bitmap blurredBitmap = BlurBuilder.blur( getActivity(), originalBitmap );

view.setBackgroundDrawable( new BitmapDrawable( getResources(), blurredBitmap ) );

 

نتیجه کار به شکل زیر خواهد بود :

بلار کردن عکس در برنامه نویسی اندروید

بعد از بلار :

بلار کردن عکس در برنامه نویسی اندروید

تعداد مشاهده مطلب : 316 بار

لینک کوتاه مطلب : https://poulgilan.com/?p=17632


نام و نام خانوادگی ( الزامی)

ایمیل (الزامی)

وبسایت / وبلاگ (اختیاری)