user2416657
user2416657

Reputation: 303

What does BitmapFactory.Options do?

What does BitmapFactory.Options in android.graphics.BitmapFactory.Options do?

There is no theoretical explanation in the android sdk reference manual about this class, it only contains the explanation about the methods of the class.

Upvotes: 1

Views: 3137

Answers (3)

user3146314
user3146314

Reputation: 31

Bitmapfactory is mainly used for Scaling

Bitmap lBmp = BitmapFactory.decodeResource(getResources(), R.Drawable.ic_dolphin); 

It gets the "dolpin" image and it will reduce the image size, if we dnt use bitmapfactory then it leads to insufficient memory allocations

Upvotes: 2

Biraj Zalavadia
Biraj Zalavadia

Reputation: 28484

See this example

This method is used to create bitmap of given specific size which is stored in sdcard.

public Bitmap decodeFile(String path,int size) {
        try {
            // Decode image size
            BitmapFactory.Options o = new BitmapFactory.Options();
            o.inJustDecodeBounds = true;
            BitmapFactory.decodeFile(path, o);
            // The new size we want to scale to
            final int REQUIRED_SIZE = size;

            // Find the correct scale value. It should be the power of 2.
            int scale = 1;
            while (o.outWidth / scale / 2 >= REQUIRED_SIZE && o.outHeight / scale / 2 >= REQUIRED_SIZE)
                scale *= 2;

            // Decode with inSampleSize
            BitmapFactory.Options o2 = new BitmapFactory.Options();
            o2.inSampleSize = scale;
            return BitmapFactory.decodeFile(path, o2);
        } catch (Throwable e) {
            e.printStackTrace();
        }
        return null;

    }

Upvotes: 0

David Sainty
David Sainty

Reputation: 1498

It's used to pass options to the BitmapFactory - as you might expect :)

For example, you can use it to explicitly scale the Bitmap up or down from the source.

Upvotes: 0

Related Questions