All Projects → HokoFly → HokoBlurDrawable

HokoFly / HokoBlurDrawable

Licence: other
HokoBlurDrawable is an Android component which provides dynamic blur effect.

Programming Languages

java
68154 projects - #9 most used programming language
C++
36643 projects - #6 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to HokoBlurDrawable

VaKawaseBlur
Fast and furious Kawase blur implementation for Unreal Engine 4
Stars: ✭ 37 (+37.04%)
Mutual labels:  blur
blurr effect
An example of how to blurr the background for a widget in flutter.
Stars: ✭ 15 (-44.44%)
Mutual labels:  blur
ECardFlow
🍭A custom ViewPager for multiple card flow system. && A layout which provide beautiful background effects for ViewPager.
Stars: ✭ 47 (+74.07%)
Mutual labels:  blur
spark-convolution-patch
Convolution and other super-patches (blur, sharpen)
Stars: ✭ 74 (+174.07%)
Mutual labels:  blur
Spatially-Varying-Blur-Detection-python
python implementation of the paper "Spatially-Varying Blur Detection Based on Multiscale Fused and Sorted Transform Coefficients of Gradient Magnitudes" - cvpr 2017
Stars: ✭ 43 (+59.26%)
Mutual labels:  blur
sic
🦜 Accessible image processing and conversion from the terminal. Front-end for image-rs/image.
Stars: ✭ 96 (+255.56%)
Mutual labels:  blur
metal camera
iOS metal camera with GPU shaders.
Stars: ✭ 68 (+151.85%)
Mutual labels:  blur
kImageAnnotator
Tool for annotating images
Stars: ✭ 55 (+103.7%)
Mutual labels:  blur
BlurringAtlasForUGUI
A blur effect for uGUI in Unity, that is effective even for atlas images including dynamic fonts.
Stars: ✭ 29 (+7.41%)
Mutual labels:  blur
RainbowTaskbar
Customizable Windows taskbar effects.
Stars: ✭ 39 (+44.44%)
Mutual labels:  blur
frosted-glass
❄️ Add a live frosted glass blur effect over any type of web content, including text.
Stars: ✭ 62 (+129.63%)
Mutual labels:  blur
Win32-Acrylic-Effect
Demonstrates implementation of the Windows 10 Acrylic Effect on C++ Win32 Apps using DWM Private APIs and Direct Composition
Stars: ✭ 104 (+285.19%)
Mutual labels:  blur
Widget-Blur
This script for the Scriptable app creates widget backgrounds that appear to be transparent. You can also optionally emulate the light or dark blur effect used in the Batteries widget from Apple.
Stars: ✭ 113 (+318.52%)
Mutual labels:  blur
blur-me
Extension that adds a blur look to applications and to different parts of the GNOME Shell, including the top panel, dash and overview
Stars: ✭ 166 (+514.81%)
Mutual labels:  blur
blur-my-shell
Extension that adds a blur look to different parts of the GNOME Shell, including the top panel, dash and overview
Stars: ✭ 516 (+1811.11%)
Mutual labels:  blur
Xamarin.BlurView
Dynamic iOS-like blur of underlying Views for Android.
Stars: ✭ 26 (-3.7%)
Mutual labels:  blur
Unblur-Scribd
Clear the blur and show the images in scribd.com page.
Stars: ✭ 26 (-3.7%)
Mutual labels:  blur
flutter acrylic
Flutter library for window acrylic, mica & transparency effects (Windows, macOS & Linux). 💙
Stars: ✭ 261 (+866.67%)
Mutual labels:  blur
DashcamCleaner
Censor identifiable information in videos., in particular dashcam recordings in Germany.
Stars: ✭ 20 (-25.93%)
Mutual labels:  blur
Kawase
Kawase dual filter blur for GameMaker Studio 2
Stars: ✭ 23 (-14.81%)
Mutual labels:  blur

HokoBlurDrawable

HokoBlurDrawable is an Android component which provides dynamic blur effect.

1. Introductions

  • Function:

    Dynamic blur, real-time blurring of the background

  • Features:

    • Multiple algorithms: Box、Stack and Gaussian algorithms. Provide different blur effect;
    • 🚀iOS-like dynamic backgroud blur: Compared to using RenderScript to process bitmaps, the component has better performance and effect.

2. Dynamic background blur

Dynamic Blur provides real-time background blurring of View and ViewGroup, not for Bitmap implementations. The component will blur the area where the View is located.

Add dependency

implementation 'com.hoko:blur-drawable:0.0.1'

To add background blur to the View, just set the BlurDrawable to the View background.

final BlurDrawable blurDrawable = new BlurDrawable();
View view = findViewById(R.id.test_view);
view.setBackgroundDrawable(blurDrawable);

Change the blur parameters:

blurDrawable.mode(mode)
blurDrawable.radius(radius)
blurDrawable.sampleFactor(factor)

Add blur color mixture(OverlayColor)

blurDrawable.mixColor(color)
blurDrawable.mixPercent(percent) //0 ~ 1.0

DISABLE/ENABLE background blur

blurDrawable.disableBlur();
blurDrawable.enableBlur();

HokoBlur already contains three common ViewGroups that implement background blur, including BlurFrameLayout, BlurLinearLayout, and BlurRelativeLayout.

// blur animation
ValueAnimator animator = ValueAnimator.ofInt(0, 20);
animator.setDuration(2000);
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
    @Override
    public void onAnimationUpdate(ValueAnimator animation) {
        mFrameLayout.getBlurDrawable().setBlurRadius((Integer) animation.getAnimatedValue());
    }
});

动态模糊

动态模糊组件HokoBlur

1. 描述

  • 组件主要提供以下功能:

    动态模糊,对背景的实时模糊

  • 组件主要的特性:

    • 多种算法,包括Box、Stack和Gaussian算法,满足不同的模糊效果;
    • 🚀类似iOS的动态背景模糊,相比使用RenderScript处理Bitmap的动态模糊方案,具有更好的效果和性能

2. 动态模糊

动态模糊提供了对View以及ViewGroup的实时背景模糊,并不是针对Bitmap的实现。组件将会对View所在区域进行模糊。

添加依赖

implementation 'com.hoko:blur-drawable:0.0.1'

为View添加背景模糊,只需要将BlurDrawable设置为View背景即可。

final BlurDrawable blurDrawable = new BlurDrawable();
View view = findViewById(R.id.test_view);
view.setBackgroundDrawable(blurDrawable);

模糊参数的调整,可以这样操作:

blurDrawable.mode(mode)
blurDrawable.radius(radius)
blurDrawable.sampleFactor(factor)

为模糊效果添加混合蒙版(OverlayColor)

blurDrawable.mixColor(color)
blurDrawable.mixPercent(percent) //0 ~ 1.0

禁用/开启背景模糊

blurDrawable.disableBlur();
blurDrawable.enableBlur();

组件已包含实现背景模糊的三种常用ViewGroup,包括BlurFrameLayout、BlurLinearLayout和BlurRelativeLayout。

使用示例:

// 模糊动画
ValueAnimator animator = ValueAnimator.ofInt(0, 20);
animator.setDuration(2000);
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
    @Override
    public void onAnimationUpdate(ValueAnimator animation) {
        mFrameLayout.getBlurDrawable().setBlurRadius((Integer) animation.getAnimatedValue());
    }
});

gif图较大,稍等片刻

动态模糊

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].