`

2011.09.26(7)——— android Bitmap的截取及缩放

阅读更多
2011.09.26(7)——— android Bitmap的截取及缩放
参考:http://chroya.iteye.com/blog/710262

有一个任务 显示一张图片的中间地方的图片
1、
什么也不用设 只要固定了imageView的宽和高 就会自动缩放来填充这个imageview

2、截取

一张大图 我要截取其中的部分

Bitmap.createBitmap(Bitmap source, int x, int y, int width, int height)


例如
Bitmap bitmap = Bitmap.createBitmap(b, 100, 20, 200, 300);


从bitmap对象b的(100,20)开始截取宽为200,高为300的部分图像

3、ScaleType
参考:http://www.cnblogs.com/over140/archive/2010/09/19/1830703.html
上面那个虽然实现了 但是又重新生成了一张图片 内存开支有点大 我又找了找 可以用这个
iv.setScaleType(ImageView.ScaleType.CENTER);


android:scaleType 参数如下

matrix
用矩阵来绘图
 
fitXY
拉伸图片(不按比例)以填充View的宽高
fitStart
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的左边

fitCenter
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的中间

fitEnd
按比例拉伸图片,拉伸后图片的高度为View的高度,且显示在View的右边

center
按原图大小显示图片,但图片宽高大于View的宽高时,截图图片中间部分显示

centerCrop
按比例放大原图直至等于某边View的宽高显示。
centerInside
当原图宽高小于或等于View的宽高时,按原图大小居中显示;反之将原图缩放至View的宽高居中显示。


4、得到缩放后的图片

Bitmap mBitmap = Bitmap.createScaledBitmap(bmp, mScreenWidth, mScreenHeight, true);  


这个方法可以得到自己固定宽和高后的图片 系统会自动缩放并返回


分享到:
评论

相关推荐

    2011.09.27(2)——— android ImageView上下同时拉伸的效果

    这篇2011年的博客文章"2011.09.27(2)——— android ImageView上下同时拉伸的效果"探讨了如何实现一个自定义的ImageView,使得图像在垂直方向上能够同时在顶部和底部进行拉伸,以达到特定的视觉效果。这种效果通常...

    2011.10.12(3)——— android Matrix学习02

    这篇博客“2011.10.12(3)——— android Matrix学习02”可能深入探讨了Matrix类的使用方法,虽然具体的细节没有给出,但我们可以根据Matrix的基本功能和常见用法来展开讨论。 1. **Matrix类的介绍**:Matrix是...

    2011.10.09——— android ImageView放大缩小(2)

    标题中的“2011.10.09——— android ImageView放大缩小(2)”指的是一个关于Android平台中ImageView组件的优化技术,特别是如何处理图片的缩放问题。在Android应用开发中,ImageView是用于显示图像的常见组件,但...

    2011.10.19(2)——— android 圆角与倒影

    matrix.setRectToRect(new RectF(0, 0, bitmap.getWidth(), bitmap.getHeight()), new RectF(0, 0, bitmap.getWidth(), bitmap.getHeight()), Matrix.ScaleToFit.FILL); shader.setLocalMatrix(matrix); Paint paint...

    安卓Android源码——(Bitmap位图渲染与操作).zip

    这份"安卓Android源码——(Bitmap位图渲染与操作)"的资料,很可能是深入讲解如何在Android系统中有效地管理和操作位图资源的教程或示例代码集合。 1. **Bitmap基本概念**: Bitmap对象是Android中的一个核心类,它...

    Android Bitmap.getPixels的正确理解演示源码

    Android Bitmap.getPixels的正确理解演示源码,参考文章《Android Bitmap入门:getPixels的正确理解》

    安卓Android源码——(Bitmap位图渲染与操作).rar

    可以使用`Bitmap.createScaledBitmap()`进行缩放,`Bitmap.createBitmap()`配合Matrix进行旋转、平移和缩放。Matrix类提供了丰富的矩阵变换功能,如`postRotate()`, `postTranslate()`, `postScale()`等。 6. **...

    Android下利用Bitmap切割图片

    切割图片通常指的是从原始图片中提取出一个矩形区域,这个操作在Android中可以通过Bitmap.createBitmap方法实现。以下是一个简单的示例,展示如何从Bitmap中裁剪出指定大小和位置的子Bitmap: ```java // 原始...

    安卓Android源码——android相册系统(用Matrix实现).rar

    这个压缩包“安卓Android源码——android相册系统(用Matrix实现).rar”显然提供了一个使用Matrix类来实现相册功能的示例代码。Matrix是Android SDK中的一个关键类,用于进行2D图像变换,如旋转、缩放、平移等。接...

    Android canvas drawBitmap方法详解及实例

    在Android开发中,Canvas是用于在屏幕上绘制图形和图像的核心组件。`drawBitmap()`方法是Canvas的一个关键函数,用于在Canvas上绘制Bitmap图像。本文将深入解析`drawBitmap()`方法的参数及其用法,并通过实例来说明...

    安卓Android源码——android相册系统(用Matrix实现).zip

    这个压缩包文件"安卓Android源码——android相册系统(用Matrix实现).zip"包含了一个使用Matrix类来实现的相册系统源码。Matrix是Android图形库中的一个关键类,它允许开发者对图像进行平移、旋转、缩放等变换操作。...

    安卓Android源码——android 安卓画廊 照片转换器.rar

    本资源"安卓Android源码——android 安卓画廊 照片转换器.rar"提供了一个具体的实现案例,帮助开发者理解和学习如何在Android环境中构建这样的功能。以下是基于这个压缩包中的源码,我们可以学到的关键知识点: 1. ...

    Android-使用Matrix对Bitmap进行处理

    Bitmap rotatedBitmap = Bitmap.createBitmap(originalBitmap, 0, 0, originalBitmap.getWidth(), originalBitmap.getHeight(), matrix, true); ``` 除了旋转,我们还可以使用Matrix进行缩放操作。例如,将Bitmap按...

    Android中把bitmap存成BMP格式图片的方法

    首先,Android SDK提供了`Bitmap.compress()`方法来将Bitmap保存为JPEG或PNG格式,但不支持BMP。因此,我们需要自定义一个方法来处理BMP格式的转换。这个过程主要包括以下几个步骤: 1. **获取Bitmap的像素数据**:...

    处理bitmap内存溢出问题

    在Android开发中,处理`Bitmap`内存溢出问题是一个常见的挑战,尤其是在处理高分辨率或大尺寸图片时。当应用程序尝试加载或操作一张超出虚拟机内存预算的`Bitmap`时,系统会抛出`java.lang.OutOfMemoryError: bitmap...

    Android中Glide获取图片Path、Bitmap用法详解

    软件开发网在此之前给大家介绍过图片加载框架Glide的基本用法介绍,大家可以先参考一下,本篇内容更加深入的分析了Glide获取图片Path、Bitmap用法,以及实现的代码分析。 1. 获取Bitmap: 1)在图片下载缓存好之后...

    android Bitmap相关知识介绍~~~

    mBitmap.compress(Bitmap.CompressFormat.PNG, 100, fOut); try { fOut.flush(); } catch (IOException e) { e.printStackTrace(); } try { fOut.close(); } catch (IOException e) { e.printStackTrace()...

    android中对Bitmap图片设置任意角为圆角

    1. 创建一个圆形Bitmap,可以通过Bitmap.createBitmap方法,传入宽度、高度和配置参数,再使用BitmapShader的TileMode.CLAMP模式来填充圆形区域。然后,创建一个Paint对象,并设置其颜色过滤器(colorFilter)为...

    BitmapFun.zip Android Bitmap 处理

    开发者可以通过`Bitmap.Config.ARGB_8888.setConfig(Bitmap.Config.RGB_565)`等方式选择更适合的配置来利用这个池。 8. **异步加载** 图片加载应在非UI线程中进行,以避免阻塞主线程。可以使用`AsyncTask`或其他...

    android Bitmap用法总结

    Bitmap.Config.ARGB_8888 : Bitmap.Config.RGB_565); Canvas canvas = new Canvas(bitmap); drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight()); drawable.draw(canvas); ...

Global site tag (gtag.js) - Google Analytics