drawable-安卓 Drawable 转 bitmap

问题描述

安卓 Drawable 转 bitmap

本人将后缀为png的图片放在res->drawable-hdpi下。现在想将其转换为bitmap然后作其他处理,看到网上很多的文章。
方法1------------------------------------
Resources res=getResources();
Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.a);
Log.i(TAG, "2222"+bmp);

方法2------------------------------------
Drawable drawable = getResources().getDrawable(R.drawable.a);
Bitmap bitmap = MainActivity.drawableToBitmap(drawable);
Log.i(TAG, "1111"+drawableToBitmap(drawable));

public static Bitmap drawableToBitmap(Drawable drawable)
{
int width = drawable.getIntrinsicWidth();
int height = drawable.getIntrinsicHeight();
Bitmap bitmap = Bitmap.createBitmap(width, height, drawable.getOpacity() != PixelFormat.OPAQUE? Bitmap.Config.ARGB_8888: Bitmap.Config.RGB_565);
Canvas canvas = new Canvas(bitmap);
drawable.setBounds(0,0,width,height);
drawable.draw(canvas);
return bitmap;

}

打印出的log信息为
2222android.graphics.Bitmap@41069968
1111android.graphics.Bitmap@41069d98

---------------------------------
我很想知道这两种方法有什么区别,查看api后,我的猜测是,第2种方法可以将各种格式的图片转换为bitmap,第1种方法只能将某些格式的图片转换为bitmap。

很菜,很迷惑。求指导

时间: 2024-09-11 10:33:42

drawable-安卓 Drawable 转 bitmap的相关文章

安卓drawable里资源图片本地路径怎么获取

问题描述 安卓drawable里资源图片本地路径怎么获取 我想做一个分享信息到qq空间的功能,分享的内容中有一项是本地图片,文档中写的是: params.putStringArrayList(QzoneShare.SHARE_TO_QQ_IMAGE_URL, "图片链接ArrayList"); 其中图片链接应该是:需要分享的本地图片路径吧?我的图片在drawable里,请问怎么能获取到图片的路径? 谢谢各位大神~ 解决方案 http://zhidao.baidu.com/link?ur

安卓开发中Bitmap源码实例

 安卓开发中Bitmap源码实例 package android.graphics; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.io.InputStream; import javax.imageio.ImageIO; public final class Bitmap extends _Original_Bitmap { private Bu

Android App开发中将View或Drawable转为Bitmap的方法_Android

View转换为Bitmap Android中经常会遇到把View转换为Bitmap的情形,比如,对整个屏幕视图进行截屏并生成图片:Coverflow中需要把一页一页的view转换为Bitmap.以便实现复杂的图形效果(阴影.倒影效果等):再比如一些动态的实时View为便于观察和记录数据.需要临时生成静态的Bitmap. 实现方法: 1)下面是笔者经常用的一个转换方法 public static Bitmap convertViewToBitmap(View view, int bitmapWid

Android中Bitmap和Drawable用法详解

一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable),我们根据画图的需求,创建相应的可画对象2.Canvas画布,绘图的目的区域,用于绘图3.Bitmap位图,用于图的处理4.Matrix矩阵二.Bitmap 1.从资源中获取Bitmap Resources res = getResources(); Bitmap bmp = BitmapFacto

Android App开发中将View或Drawable转为Bitmap的方法

View转换为Bitmap Android中经常会遇到把View转换为Bitmap的情形,比如,对整个屏幕视图进行截屏并生成图片:Coverflow中需要把一页一页的view转换为Bitmap.以便实现复杂的图形效果(阴影.倒影效果等):再比如一些动态的实时View为便于观察和记录数据.需要临时生成静态的Bitmap. 实现方法: 1)下面是笔者经常用的一个转换方法 public static Bitmap convertViewToBitmap(View view, int bitmapWid

Android Bitmap和Drawable的对比

Android Bitmap和Drawable的对比 Bitmap - 称作位图,一般位图的文件格式后缀为bmp,当然编码器也有很多如RGB565.RGB888.作为一种逐像素的显示对象执行效率高,但是缺点也很明显存储效率低.我们理解为一种存储对象比较好. Drawable - 作为Android平下通用的图形对象,它可以装载常用格式的图像,比如GIF.PNG.JPG,当然也支持BMP,当然还提供一些高级的可视化对象,比如渐变.图形等. A bitmap is a Drawable. A Dra

详解Android中Drawable方法_Android

本文为大家分享了Android中Drawable方法的详细使用方法,供大家参考,具体内容如下 1. BitmapDrawable相关方法: 新建在drawable目录下面,示例如下: <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:antialias="true" android:dither="true" android:filter=&

android的Drawable详解

Drawable简介 Drawable有很多种,用来表示一种图像的概念,但他们又不完全是图像,他们是用过颜色构建出来的各种图像的表现形式.Drawable一般都是通过xml来定义的 ,当然我们也可以通过代码来创建,Drawable是一个抽象的类,是所以Drawable的基类,每个具体的Drawable都是它的子类,如ShapeDrawable,BitmapDrwable等,其结构如下图: Drawable的内部有两个重要的参数需要说明,getIntrinsicHeight 和 getIntrin

android drawable

android.graphics.drawable.Drawable是个虚类.它的直接子类有BitmapDrawable, ClipDrawable, ColorDrawable, DrawableContainer, GradientDrawable, InsetDrawable, LayerDrawable, NinePatchDrawable, PictureDrawable, RotateDrawable, ScaleDrawable, ShapeDrawable间接子类有Animati