Android Bitmap用法
来源:互联网 发布:网站正在升级最新域名 编辑:程序博客网 时间:2024/05/17 08:07
1、Drawable → Bitmap
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;}
2、从资源中获取Bitmap
Resources res=getResources();Bitmap bmp=BitmapFactory.decodeResource(res, R.drawable.pic);3、Bitmap → byte[]
private byte[] Bitmap2Bytes(Bitmap bm){ByteArrayOutputStream baos = new ByteArrayOutputStream();bm.compress(Bitmap.CompressFormat.PNG, 100, baos);return baos.toByteArray();}
4、byte[] → Bitmap
private Bitmap Bytes2Bimap(byte[] b){if(b.length!=0){return BitmapFactory.decodeByteArray(b, 0, b.length);}else {return null;}}5、保存bitmap
static boolean saveBitmap2file(Bitmap bmp,String filename){CompressFormat format= Bitmap.CompressFormat.JPEG;int quality = 100;OutputStream stream = null;try {stream = new FileOutputStream("/sdcard/" + filename);} catch (FileNotFoundException e) {// TODO Auto-generated catch blockGenerated by Foxit PDF Creator © Foxit Softwarehttp://www.foxitsoftware.com For evaluation only.e.printStackTrace();}return bmp.compress(format, quality, stream);}
6、将图片按自己的要求缩放
// 图片源Bitmap bm = BitmapFactory.decodeStream(getResources().openRawResource(R.drawable.dog));// 获得图片的宽高int width = bm.getWidth();int height = bm.getHeight();// 设置想要的大小int newWidth = 320;int newHeight = 480;// 计算缩放比例float scaleWidth = ((float) newWidth) / width;float scaleHeight = ((float) newHeight) / height;// 取得想要缩放的matrix参数Matrix matrix = new Matrix();matrix.postScale(scaleWidth, scaleHeight);// 得到新的图片Bitmap newbm = Bitmap.createBitmap(bm, 0, 0, width, height, matrix,true);// 放在画布上canvas.drawBitmap(newbm, 0, 0, paint);
7:File图片转Bitmap
Bitmap bt = BitmapFactory.decodeFile("/sdcard/myImage/" + "head.jpg");//图片地址
8://图片转Bitmap
public Bitmap drawableToBitamp(int drawableResource) {//可以取raw里面的资源BitmapFactory.Options opt = new BitmapFactory.Options();opt.inPreferredConfig = Bitmap.Config.RGB_565;opt.inPurgeable = true;opt.inInputShareable = true;InputStream is = this.getResources().openRawResource(drawableResource);BitmapFactory.decodeStream(is, null, opt);return BitmapFactory.decodeStream(is, null, opt);}
0 0
- android Bitmap用法总结
- android Bitmap用法总结
- Android Bitmap用法总结
- android Bitmap用法总结
- android Bitmap用法总结
- Android Bitmap用法总结
- android Bitmap用法总结
- android Bitmap用法总结
- android Bitmap用法总结
- android Bitmap用法总结
- android Bitmap用法总结
- android Bitmap用法小结
- android Bitmap用法总结
- android Bitmap用法总结
- android Bitmap用法总结
- Android Bitmap用法
- android Bitmap用法总结
- android Bitmap用法总结
- 支持下拉刷新和上划加载更多的自定义RecyclerView(仿XListView效果)
- 全选反选,订单修改删除操作
- Android 如何调用第三方.so (.a) 文件
- 【转】高仿淘宝首页,仿真度很高,大家学习下
- 足部反射区点单详解
- Android Bitmap用法
- java 常见几种发送http请求案例
- MyEclipse快捷键大全
- Java NIO使用及原理分析(三)
- 《深入理解mybatis原理》 Mybatis数据源与连接池
- LeetCode 032 Longest Valid Parentheses
- 【SpringMvc3】关于SpringMvc3视图解析器的问题
- Android 百分比布局库(percent-support-lib) 解析与扩展
- poj 1941 The Sierpinski Fractal(递归)