DEV Community

Cover image for Blurr - Easy Blur and Tools Library
EGEMEN
EGEMEN

Posted on

Blurr - Easy Blur and Tools Library

Blurr 🌁 Easy Blur and Tools Library

Simple and quick solution for blurred bitmaps.

Kotlin Version

License

version

Async or Sync, you can quickly blur your images. The library supports Bitmap, Drawable and CustomViews. You have the opportunity to use the necessary libraries separately. If you encounter an error or problem, please open a issue. It will be fixed as soon as possible. ⚡

Features

  • [x] Kotlin
  • [x] Rx3
  • [x] CustomView to Bitmap (usefull for markers - osm and gmap)
  • [x] Blurred Bitmaps
  • [x] Drawable to Bitmap
  • [x] Application Variants

General Usage

/**
* @param bitmapScale should be 0-1f -> small values for more blur
* @param blurRadius should be 0-25f -> bigger values for more blur
*
* @exception RSIllegalArgumentException Radius out of range (0 < r <= 25)
* @exception NullPointerException void android.graphics.Bitmap.setHasAlpha(boolean)
**/   

 fun applyRules(bitmapScale: Float, blurRadius: Float): Blurr {
   bS = bitmapScale
   bR = blurRadius
   return this
}
Enter fullscreen mode Exit fullscreen mode

Convert Drawable to Blurred Bitmap (async)

Blurr.get(this)
     .applyRules(bS, bR)
     .into(resources.getDrawable(R.drawable.test_image), imageViewTrial) //async
Enter fullscreen mode Exit fullscreen mode

Convert Drawable to Blurred Bitmap (sync)

val bitmap2 = Blurr
        .get(this)
        .applyRules(bS, bR)
        .solution(resources.getDrawable(R.drawable.test_image))
Enter fullscreen mode Exit fullscreen mode

Convert View Blurred Bitmap (async)

Blurr.get(this)
     .applyRules(bS, bR)
     .into(view, imageViewTrial) //async
Enter fullscreen mode Exit fullscreen mode

Convert View Blurred Bitmap (sync)

val bitmap1 = Blurr
        .get(this)
        .applyRules(bS, bR)
        .solution(view)
Enter fullscreen mode Exit fullscreen mode

Convert Bitmap to Blurred Bitmap (async)

Blurr.get(this)
     .applyRules(bS, bR)
     .into(bitmap!!, imageViewTrial) //async
Enter fullscreen mode Exit fullscreen mode

Convert Bitmap to Blurred Bitmap (sync)

val bitmap3 = Blurr
       .get(this)
       .applyRules(bS, bR)
       .solution(bitmap!!)
Enter fullscreen mode Exit fullscreen mode

Tools: Bitmap From Custom Views

 val bitmap4 = Blurr
        .getTools()
        .bitmapFromCustomView(view)
Enter fullscreen mode Exit fullscreen mode

Tools: Bitmap From Drawable

val bitmap5 = Blurr
        .getTools()
        .bitmapFromDrawable(resources.getDrawable(R.drawable.test_image))
Enter fullscreen mode Exit fullscreen mode

Implementation Gradle

Add it in your root build.gradle at the end of repositories
allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}
Enter fullscreen mode Exit fullscreen mode
Add the dependency
dependencies {
    implementation 'com.github.AsynctaskCoffee:BlurryAndroid:beta-0.1'
}
Enter fullscreen mode Exit fullscreen mode

Implementation Maven

Add the JitPack repository to your build file
<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>
Enter fullscreen mode Exit fullscreen mode
Add the dependency
<dependency>
    <groupId>com.github.AsynctaskCoffee</groupId>
    <artifactId>BlurryAndroid</artifactId>
    <version>beta-0.1</version>
</dependency>
Enter fullscreen mode Exit fullscreen mode

Top comments (0)