Android 图片转换为drawable、bitmap 、file

本文详细介绍了在Android中如何使用Bitmap类进行图片资源加载、转换、保存等操作,包括从资源文件、文件路径读取Bitmap,以及调整图片尺寸的方法。
部署运行你感兴趣的模型镜像

一、Bitmap

1、
Resources resources = mContext.getResources();
Drawable drawable = resources.getDrawable(R.drawable.a);
imageview.setBackground(drawable);

2、

Resources r = this.getContext().getResources();
Inputstream is = r.openRawResource(R.drawable.my_background_image);
BitmapDrawable  bmpDraw = new BitmapDrawable(is);
Bitmap bmp = bmpDraw.getBitmap();

3、
Bitmap bmp=BitmapFactory.decodeResource(r, R.drawable.icon);

Bitmap newb = Bitmap.createBitmap( 300, 300, Config.ARGB_8888 ); 

4、
InputStream is = getResources().openRawResource(R.drawable.icon);  

Bitmap mBitmap = BitmapFactory.decodeStream(is);

注意: Bitmap bmp=BitmapFactory.decodeResource(r, R.drawable.icon); 是R.drawable.icon,不是R.mipmap.icon,否則失敗。

二、Android 之 Bitmap 和 File 相互转换

try{
String filePath=”/storage/emulated/0/123.jpg"; 
Bitmap bitmap=BitmapFactory.decodeFile(filePath,getBitmapOption(2)); //将图片的长和宽缩小味原来的1/2
}catch(Exception e){
e.printStackTrace();
}

private Options getBitmapOption(int inSampleSize){ 
System.gc(); 
BitmapFactory.Options options = new BitmapFactory.Options(); 
options.inPurgeable = true; 
options.inSampleSize = inSampleSize; 
return options; 
}

三、Bitmap对象保存图片文件

public void saveBitmapFile(Bitmap bitmap){ 
File file=new File(“/storage/emulated/0/1234.jpg”);//将要保存图片的路径 
  try { 
          BufferedOutputStream bos = new BufferedOutputStream(new     FileOutputStream(file)); 
          bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos); 
          bos.flush(); 
          bos.close(); 
    } catch (IOException e) { 
        e.printStackTrace(); 
    } 
}

转载自http://cfanz.cn/index.php?c=article&a=read&id=141146 

您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值