Example usage for android.graphics.drawable Drawable draw

List of usage examples for android.graphics.drawable Drawable draw

Introduction

In this page you can find the example usage for android.graphics.drawable Drawable draw.

Prototype

public abstract void draw(@NonNull Canvas canvas);

Source Link

Document

Draw in its bounds (set via setBounds) respecting optional effects such as alpha (set via setAlpha) and color filter (set via setColorFilter).

Usage

From source file:Main.java

public static Bitmap DrawableToBitmap(Drawable drawable) {

    Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(),
            drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888 : Bitmap.Config.RGB_565);
    Canvas canvas = new Canvas(bitmap);

    //canvas.setBitmap(bitmap);

    drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());

    drawable.draw(canvas);

    return bitmap;

}

From source file:Main.java

public static Bitmap drawableToBitmap(Drawable drawable) {

    Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(),
            drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888 : Bitmap.Config.RGB_565);
    Canvas canvas = new Canvas(bitmap);
    drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
    drawable.draw(canvas);
    return bitmap;
}

From source file:com.jameswolfeoliver.pigeon.Utilities.Utils.java

public static Bitmap getBitmapFromVectorDrawable(Context context, int drawableId) {
    Drawable drawable = ContextCompat.getDrawable(context, drawableId);
    Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(),
            Bitmap.Config.ARGB_8888);/* ww w  .ja v a  2 s .  c  om*/
    Canvas canvas = new Canvas(bitmap);
    drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
    drawable.draw(canvas);
    return bitmap;
}

From source file:Main.java

public static Bitmap flattenExtensionIcon(Drawable baseIcon, int color) {
    if (baseIcon == null) {
        return null;
    }//from   w  w w .  j  av  a  2 s.com

    Bitmap outBitmap = Bitmap.createBitmap(EXTENSION_ICON_SIZE, EXTENSION_ICON_SIZE, Bitmap.Config.ARGB_8888);
    Canvas canvas = new Canvas(outBitmap);
    baseIcon.setBounds(0, 0, EXTENSION_ICON_SIZE, EXTENSION_ICON_SIZE);
    baseIcon.setColorFilter(color, PorterDuff.Mode.SRC_IN);
    baseIcon.draw(canvas);
    baseIcon.setColorFilter(null);
    baseIcon.setCallback(null); // free up any references
    return outBitmap;
}

From source file:Main.java

public static Bitmap drawableToBitmap(Drawable drawable) {
    int width = drawable.getIntrinsicWidth();
    int height = drawable.getIntrinsicHeight();
    Bitmap.Config config = drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Config.ARGB_8888
            : Bitmap.Config.RGB_565;//from w ww  .  j av  a2  s .  c om
    Bitmap bitmap = Bitmap.createBitmap(width, height, config);
    Canvas canvas = new Canvas(bitmap);
    drawable.setBounds(0, 0, width, height);
    drawable.draw(canvas);
    return bitmap;
}

From source file:Main.java

/**
 * Drawable to Bitmap/* ww w  . jav a 2 s  .  c  o  m*/
 */
public static Bitmap drawableToBitmap(Drawable drawable) {
    if (drawable instanceof BitmapDrawable)
        ((BitmapDrawable) drawable).getBitmap();
    int width = drawable.getIntrinsicWidth();
    int height = drawable.getIntrinsicHeight();
    Bitmap bitmap = createBitmapSafely(width, height, Bitmap.Config.ARGB_8888, 1);
    Canvas canvas = new Canvas(bitmap);
    drawable.setBounds(0, 0, width, height);
    drawable.draw(canvas);
    return bitmap;
}

From source file:Main.java

/**
 * Return the {@link Bitmap} representing the {@link Drawable}.
 * @param drawable Object to convert to {@link Bitmap}.
 * @return {@link Bitmap} representing the {@link Drawable}.
 *//*from  www  .  j av a 2s  . com*/
public static Bitmap drawableToBitmap(Drawable drawable) {
    Bitmap retVal;
    if (drawable instanceof BitmapDrawable) {
        //Easy
        retVal = ((BitmapDrawable) drawable).getBitmap();
    } else {
        retVal = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(),
                Bitmap.Config.ARGB_8888);

        synchronized (canvas) {
            canvas.setBitmap(retVal);
            drawable.draw(canvas);
        }
    }
    return retVal;
}

From source file:Main.java

private static Bitmap drawableToBitmap(Drawable drawable) {
    if (drawable instanceof BitmapDrawable) {
        return ((BitmapDrawable) drawable).getBitmap();
    }//from  www .j  a  v a  2 s .com

    final Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(),
            Bitmap.Config.ARGB_8888);
    final Canvas canvas = new Canvas(bitmap);
    drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
    drawable.draw(canvas);

    return bitmap;
}

From source file:Main.java

public static void drawRight(Canvas canvas, Drawable drawable, View child,
        ViewGroup.MarginLayoutParams params) {

    final int top = child.getTop() - params.topMargin - drawable.getIntrinsicHeight();
    final int bottom = child.getBottom() + params.bottomMargin + drawable.getIntrinsicHeight();
    final int left = child.getRight() + params.rightMargin;
    final int right = left + drawable.getIntrinsicWidth();

    drawable.setBounds(left, top, right, bottom);
    drawable.draw(canvas);
}

From source file:Main.java

public static void drawBottom(Canvas canvas, Drawable drawable, View child,
        ViewGroup.MarginLayoutParams params) {

    final int left = child.getLeft() - params.leftMargin - drawable.getIntrinsicWidth();
    final int right = child.getRight() + params.rightMargin + drawable.getIntrinsicWidth();
    final int top = child.getBottom() + params.bottomMargin;
    final int bottom = top + drawable.getIntrinsicHeight();

    drawable.setBounds(left, top, right, bottom);
    drawable.draw(canvas);
}