List of usage examples for android.graphics.drawable BitmapDrawable getBitmap
public final Bitmap getBitmap()
From source file:Main.java
private static Bitmap drawableToBitMap(Drawable drawable) { if (drawable == null) { return null; }//ww w. j a v a 2 s .com if (drawable instanceof BitmapDrawable) { BitmapDrawable bitmapDrawable = ((BitmapDrawable) drawable); return bitmapDrawable.getBitmap(); } else { 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:Main.java
/** * Drawable -> bitmap/* w ww. j av a 2 s .c o m*/ * * @param drawable * @return */ public static Bitmap drawableToBitmap(Drawable drawable) { BitmapDrawable bd = (BitmapDrawable) drawable; Bitmap bm = bd.getBitmap(); return bm; }
From source file:Main.java
@SuppressWarnings("unused") public static Bitmap drawableToBitmap(Drawable drawable) { Bitmap bitmap;//from ww w . ja v a2 s .c o m if (drawable instanceof BitmapDrawable) { BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable; if (bitmapDrawable.getBitmap() != null) { return bitmapDrawable.getBitmap(); } } if (drawable.getIntrinsicWidth() <= 0 || drawable.getIntrinsicHeight() <= 0) { bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888); // Single color bitmap will be created of 1x1 pixel } else { bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); } 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 drawableToBitmap(Drawable drawable) { if (drawable == null) drawable = new ColorDrawable(Color.TRANSPARENT); Bitmap bitmap;// w w w . j a v a 2 s. co m if (drawable instanceof BitmapDrawable) { BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable; if (bitmapDrawable.getBitmap() != null) return bitmapDrawable.getBitmap(); } if (drawable.getIntrinsicWidth() <= 0 || drawable.getIntrinsicHeight() <= 0) bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888); else bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(bitmap); drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight()); drawable.draw(canvas); return bitmap; }
From source file:Main.java
/** * TODO: Never tested. I don't remember if it works, but plese don't remove this. *//*from w w w .ja va 2s . c o m*/ private static Bitmap drawableToBitmap(Drawable drawable) { Bitmap bitmap = null; if (drawable instanceof BitmapDrawable) { BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable; if (bitmapDrawable.getBitmap() != null) { return bitmapDrawable.getBitmap(); } } if (drawable.getIntrinsicWidth() <= 0 || drawable.getIntrinsicHeight() <= 0) { bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888); // Single color bitmap will be created of 1x1 pixel } else { bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); } 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 convertToBitmap(Drawable dw) { Bitmap bitmap;/*from w w w. j a v a2 s .c o m*/ if (dw instanceof BitmapDrawable) { BitmapDrawable bitmapDrawable = (BitmapDrawable) dw; if (bitmapDrawable.getBitmap() != null) { return bitmapDrawable.getBitmap(); } } if (dw.getIntrinsicWidth() <= 0 || dw.getIntrinsicHeight() <= 0) { bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888); } else { bitmap = Bitmap.createBitmap(dw.getIntrinsicWidth(), dw.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); } Canvas canvas = new Canvas(bitmap); dw.setBounds(0, 0, canvas.getWidth(), canvas.getHeight()); dw.draw(canvas); return bitmap; }
From source file:Main.java
public static byte[] getAppIconByte(Context c, String packageName) { ByteArrayOutputStream out = new ByteArrayOutputStream(); try {//www . j a v a 2s.c o m BitmapDrawable drawable = (BitmapDrawable) c.getPackageManager().getApplicationIcon(packageName); drawable.getBitmap().compress(Bitmap.CompressFormat.PNG, 100, out); } catch (NameNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } return out.toByteArray(); }
From source file:Main.java
public static void recycleImageViewBitmap(ImageView imageView) { if (imageView == null) return;/*from www. j a va2 s. c om*/ Drawable drawable = imageView.getDrawable(); if (drawable == null) return; imageView.setImageDrawable(null); BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable; Bitmap bitmap = bitmapDrawable.getBitmap(); if (bitmap != null) { bitmap.recycle(); } }
From source file:Main.java
/** * Convert a {@link Drawable} into an {@link Bitmap} object. * <p>//from w w w. j av a2 s.c om * Draws the {@code Drawable} onto a RAM-only {@link Canvas} and grabs the resulting * {@code Bitmap}. * </p> * <p> * If the {@code Drawable} is a {@link BitmapDrawable}, no conversion is needed, and no * conversion will be done. * </p> * * @param drawable The {@link Drawable} to convert. Can be any drawable. * @return A {@link Bitmap} representing the given {@code drawable}. */ public static Bitmap drawableToBitmap(Drawable drawable) { Bitmap bitmap; if (drawable instanceof BitmapDrawable) { BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable; if (bitmapDrawable.getBitmap() != null) { return bitmapDrawable.getBitmap(); } } if (drawable.getIntrinsicWidth() <= 0 || drawable.getIntrinsicHeight() <= 0) { bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888); // Single color bitmap will be created of 1x1 pixel } else { bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); } 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 drawableToBitmap(Drawable drawable) { Bitmap bitmap = null;// w w w . j av a2s. c om if (drawable instanceof BitmapDrawable) { BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable; if (bitmapDrawable.getBitmap() != null) { return bitmapDrawable.getBitmap(); } } if (drawable.getIntrinsicWidth() <= 0 || drawable.getIntrinsicHeight() <= 0) { bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888); // Single color bitmap will be created of 1x1 pixel } else { bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); } Canvas canvas = new Canvas(bitmap); drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight()); drawable.draw(canvas); return bitmap; }