重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

android图片缩小,安卓手机图片怎么缩小

android中压缩图片的几种方法比较

图片有三种存在形式:硬盘上时是file,网络传输时是stream,内存中是stream或bitmap,所谓的质量压缩,它其实只能实现对 file的影响,你可以把一个file转成bitmap再转成file,或者直接将一个bitmap转成file时,这个最终的file是被压缩过的,但 是中间的bitmap并没有被压缩(或者说几乎没有被压缩,我不确定),因为bigmap在内存中的大小是按像素计算的,也就是width * height,对于质量压缩,并不会改变图片的像素,所以就算质量被压缩了,但是bitmap在内存的占有率还是没变小,但你做成file时,它确实变小 了;

创新互联长期为成百上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为秀英企业提供专业的成都网站制作、网站设计,秀英网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。

而尺寸压缩由于是减小了图片的像素,所以它直接对bitmap产生了影响,当然最终的file也是相对的变小了;

android gallery如何设置图片按比例缩小

private

void

small()

{

int

bmpWidth=bmp.getWidth();

int

bmpHeight=bmp.getHeight();

Log.i(TAG,

"bmpWidth

=

"

+

bmpWidth

+

",

bmpHeight

=

"

+

bmpHeight);

/*

设置图片缩小的比例

*/

double

scale=0.8;

/*

计算出这次要缩小的比例

*/

scaleWidth=(float)

(scaleWidth*scale);

scaleHeight=(float)

(scaleHeight*scale);

/*

产生reSize后的Bitmap对象

*/

Matrix

matrix

=

new

Matrix();

matrix.postScale(scaleWidth,

scaleHeight);

Bitmap

resizeBmp

=

Bitmap.createBitmap(bmp,0,0,bmpWidth,

bmpHeight,matrix,true)

Android缩放图片的方法有哪些

1. BitmapFactory.Options

options.inSampleSize,它的取值应该是2的次方:1、2、4、8…

表示宽高都是原来的1/1, 1/2, 1/4, 1/8…

如果设置的值 1,那么效果就和 =1是一样的

再调用BitmapFactory的相关decode方法,传入options参数,即可得到一张缩小后的图片。

附上一段计算inSampleSize的方法:

static int calculateInSampleSize(BitmapFactory.Options options, int reqWidth, int reqHeight) { final int height = options.outHeight; final int width = options.outWidth; int inSampleSize = 1; if (height reqHeight || width reqWidth) { final int halfHeight = height / 2; final int halfWidth = width / 2; while ((halfHeight / inSampleSize) reqHeight

(halfWidth / inSampleSize) reqWidth) {

inSampleSize *= 2;

}

} return inSampleSize;

}

2. Bitmap.createBitmap(Bitmap source, int x, int y, int width, int height, Matrix m, boolean filter)

以source的x,y为起点,宽w高h的范围,进行matrix变化。

这里只讨论缩放,那么matrix肯定是添加了scale操作。

要注意的是这里的参数x、y、width、height都是相对于source原图的。

如果x=y=0; w=source.getWidth()/2, h=source.getHeight()/2;scale=2;

那么最后的效果,只是取原图的左上四分之一的部份…并对这部份进行2倍放大

3. Bitmap.createScaledBitmap(bitmap, w, h, boolean filter);

以w,h为目标对bitmap进行缩放,filter表示是否要对位图进行过滤(滤波)处理

这个方法的效果就类似于ImageView.ScaleType.FIT_XY

android中有方法可以对图片进行缩放吗?(不是缩放画布,是真的改变了原来图片的大小)

scaleType:CENTER /center 在视图中心显示图片,并且不缩放图片CENTER_CROP / centerCrop 按比例缩放图片,使得图片长 (宽)的大于等于视图的相应维度CENTER_INSIDE / centerInside 按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度FIT_CENTER / fitCenter 按比例缩放图片到视图的最小边,居中显示FIT_END / fitEnd 按比例缩放图片到视图的最小边,显示在视图的下部分位置FIT_START / fitStart 把图片按比例扩大/缩小到视图的最小边,显示在视图的上部分位置FIT_XY / fitXY 把图片不按比例缩放到视图的大小显示MATRIX / matrix 用矩阵来绘制 到安卓巴士网站查看回答详情

想做一个android的图片缩放 请问android系统自带这个功能么 可以直接调用么

带,但同时你也要自己写事件监听,有方法可以实现。可以直接调用.流程是得到一个view,然后view.setImageMatrix(Matrix m).然后创建一个matrix,matrix.postScale(s1,s2,x,y);s1,s2是横向缩放比例,s2是纵向缩放比例,x,y是中心点的坐标。缩放比例大于1,就是放大,小于1是缩小 .

用matrix类进行缩放 然后canvas画出来好了

Android图片压缩与优化的几种方式

1.使用的图片最好用png格式

2.如果你的图片仍然大的话可以在项目里面点击右键选择convert to Webp,转成webp格式图片可以变小很多!


本文名称:android图片缩小,安卓手机图片怎么缩小
文章起源:http://cqcxhl.cn/article/dscijcd.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP