How to Android Image Compression Using ImageZipper Library

We all know that good UI is important key factor for app success and for UI informative image is most important. But nowadays we don’t care about the size of that image which makes app bigger and bigger in size. ImageZipper is an image compression library which helps you to compress your images both in default and custom way. It allows you to control you the width, height, format, orientation and quality of Image. It ease out the task to send images to the server.

How to Android Image Compression Using ImageZipper Library?

How to Android Image Compression  Using ImageZipper Library
How to Android Image Compression Using ImageZipper Library

[tmh_article_ads]

Let’s discuss how you can implement ImageZipper in your application

Gradle

Add this to your root build.gradle file:

allprojects {
        repositories {
            ...
            maven { url "https://jitpack.io" }
        }
    }

Add this to your app module’s build.gradle file:

dependencies {
          compile 'com.github.amanjeetsingh150:ImageZipper:1.3'
    }

Default Compressor

File imageZipperFile=new ImageZipper(this).compressToFile(actualFile);

Custom Compressor

File imageZipperFile=new ImageZipper(MainActivity.this)
                       .setQuality(10)
                       .setMaxWidth(200)
                       .setMaxHeight(200)
                       .compressToFile(actualFile);

OK Now Get me Bitmap!!

Bitmap b=new ImageZipper(MainActivity.this).compressToBitmap(actualFile);

Usage

LIST OF FUNCTIONS

If you want to use custom compressor:

Function Arguments
setMaxWidth(int maxWidth) Width required
setMaxHeight(int maxHeight) Height required
setMaxQuality(int quality) Quality required
setOrientation(int maxHeight) Orientation required(90,180)
setCompressFormat(Bitmap.CompressFormat compressFormat) Format required(PNG,JPEG,WEBP)

Cool !! Now I need Base64 Encoding and Decoding:

String base64=ImageZipper.getBase64forImage(imageZipperFile);
   Bitmap b=ImageZipper.decodeBase64(String base64);

NOTE:
It required permissions: Add this to your manifest:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE">

Marshmallow and above requests for the permission on runtime.

Download Project

That’s it !! I know its simple but trust me that’s it. Hope you like this article if it help you then give some time to share with your friends.

By Tell Me How

It is a technology blog and admin has excellent experience in programming from 5+ year. You can contact us at ceo.tellmehow@gmail.com

Share your thoughts

Leave a Reply

Loading Facebook Comments ...
Loading Disqus Comments ...