android bitmap缩放

原创 2012年03月30日 12:15:54
package com.dengfan;


import android.graphics.Bitmap;
import android.graphics.Matrix;


public class BitmapZoom 
{

/**
* 按指定比例压缩
* @param srcBitmap
* @param percent
* @return
*/
public static Bitmap bitmapZoomByPercent(Bitmap srcBitmap ,double percent)
{
int srcWidth = srcBitmap.getWidth();   
        int srcHeight = srcBitmap.getHeight();    
  
        float scaleWidth = (float) percent;   
        float scaleHeight = (float) percent;   
  
        return bitmapZoomByScale(srcBitmap, scaleWidth, scaleHeight);
}

/**
* 按照指定长宽压缩
* @param srcBitmap
* @param newWidth
* @param newHeight
* @return
*/
public static Bitmap bitmapZoomBySize(Bitmap srcBitmap,int newWidth,int newHeight)
{
int srcWidth = srcBitmap.getWidth();   
        int srcHeight = srcBitmap.getHeight();    
  
        float scaleWidth = ((float) newWidth) / srcWidth;   
        float scaleHeight = ((float) newHeight) / srcHeight;   
  
        return bitmapZoomByScale(srcBitmap, scaleWidth, scaleHeight);
}

/**
* 按照高度的百分比压缩
* @param srcBitmap
* @param newHeight
* @return
*/
public static Bitmap bitmapZoomByHeight(Bitmap srcBitmap,int newHeight)
{
int srcWidth = srcBitmap.getWidth();   
        int srcHeight = srcBitmap.getHeight();    
     
        float scaleHeight = ((float) newHeight) / srcHeight;   
        float scaleWidth = scaleHeight;
        
        return bitmapZoomByScale(srcBitmap, scaleWidth, scaleHeight);
}

/**
* 按照宽度的百分比压缩
* @param srcBitmap
* @param newHeight
* @return
*/
public static Bitmap bitmapZoomByWidth(Bitmap srcBitmap,int newWidth)
{
int srcWidth = srcBitmap.getWidth();   
        int srcHeight = srcBitmap.getHeight();    
     
        float scaleWidth = ((float) newWidth) / srcWidth;   
        float scaleHeight = scaleWidth;
        
        return bitmapZoomByScale(srcBitmap, scaleWidth, scaleHeight);
}

/**
* 使用长宽缩放比缩放
* @param srcBitmap
* @param scaleWidth
* @param scaleHeight
* @return
*/
public static Bitmap bitmapZoomByScale(Bitmap srcBitmap,float scaleWidth,float scaleHeight)
{
int srcWidth = srcBitmap.getWidth();   
        int srcHeight = srcBitmap.getHeight();  
Matrix matrix = new Matrix();   
        matrix.postScale(scaleWidth, scaleHeight);     
        Bitmap resizedBitmap = Bitmap.createBitmap(srcBitmap, 0, 0, srcWidth,   
        srcHeight, matrix, true);
        if(resizedBitmap != null)
        {
        return resizedBitmap;
        }
        else
        {
       
        return srcBitmap;
        }
}


}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Android Bitmap转换以及图片的缩放

Bitmap用法总结 1、Drawable → Bitmap Java代码   "font-size: medium;">Bitmap用法总结 1、Drawable → ...

Android Bitmap 常见的几个操作:缩放,裁剪,旋转,偏移

Android Bitmap 相关操作 常见的几个操作:缩放,裁剪,旋转,偏移      很多操作需要 Matrix 来支持;Matrix 通过矩阵来处理位图,计算出各个像素点的位置...

Android Bitmap缩放

Matrix matrix = new Matrix(); matrix.setValues(new float[] { 1, 0, 0, 0, 1, 0, 0, 0,...

Android中图片Bitmap的缩放

原文地址:http://blog.csdn.net/stoppig/article/details/23198809 目录(?)[-] 一什么是Android中的Bitmap二...

android ImagView缩放方法之一(Bitmap)

package com.myandroid.test;      import android.app.Activity;   import android.graphics.Bitmap; &...

android Bitmap的截取及缩放

2011.09.26(7)——— android Bitmap的截取及缩放  参考:http://chroya.iteye.com/blog/710262  有一个任务 显示一张图片的中间地方...

android 常用Bitmap处理方法收集:普通裁剪,缩放,圆形裁剪

代码是平常使用时收集的,并不是我本人所写。这些bitmap处理方法在我的android程序里面使用相对较多,希望对大家也有些帮助。 import android.graphics.Bitmap; im...

Android中图片Bitmap的缩放

在Android开发中,经常会遇到Android图片的缩放问题,比如

Android Bitmap的缩放

Bitmap的效果虽然很好,即有色彩RGB又有透明度Alqha,但同时意味着图片将会占据更大的内存空间,手机的内存毕竟是有限的,如果加载大量的Bitmap图片,很有可能会出现内存溢出的现象。为了防止内...

Android图片压缩与缩放,Bitmap和Drawable相互转换(转)

本文转自http://blog.csdn.net/demonliuhui/article/details/62425151 根据Bitmap压缩图片 该方法不适用特别大的图片,如果图片过大会及其耗时...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)