Android 缩放图片

/**
 * resize Bitmap
 *
 * @param bitmap
 * @param newWidth
 * @return
 */
public static Bitmap resizeBitmap(Bitmap bitmap, int newWidth) {
	if (bitmap == null)
		return null;
	int w = bitmap.getWidth();
	int h = bitmap.getHeight();

	Log.e("Jarvis", w + "~" + h);

	float temp = ((float) h) / ((float) w);
	int newHeight = (int) (newWidth * temp);
	float scaleWidth = ((float) newWidth) / w;
	float scaleHeight = ((float) newHeight) / h;
	Matrix matrix = new Matrix();
	matrix.postScale(scaleWidth, scaleHeight);
	Bitmap resizedBitmap = Bitmap.createBitmap(bitmap, 0, 0, w, h, matrix,
			true);
	if (!bitmap.isRecycled()) {
		bitmap.recycle();
	}

	return resizedBitmap;
}
/**
 * 放大缩小图片
 *
 * @param bitmap
 * @param w
 * @param h
 * @return
 */
public static Bitmap zoomBitmap(Bitmap bitmap, int w, int h) {
	int width = bitmap.getWidth();
	int height = bitmap.getHeight();
	Matrix matrix = new Matrix();
	float scaleWidht = ((float) w / width);
	float scaleHeight = ((float) h / height);
	matrix.postScale(scaleWidht, scaleHeight);
	Bitmap newbmp = Bitmap.createBitmap(bitmap, 0, 0, width, height,
			matrix, true);
	return newbmp;
}
时间: 2024-09-20 10:52:53

Android 缩放图片的相关文章

Android: 缩放图片文件引起的OOM异常

http://dev.10086.cn/cmdn/wiki/index.php?doc-view-5037.html 传输文件,或者设置头像,我们一般都会检查原始图片的大小,作缩放处理. 常用的Java版缩放图片代码: public Bitmap getZoomImage(Bitmap src, int desW, int desH) { Bitmap desImg = null; int srcW = src.getWidth(); // 原始图像宽 int srcH = src.getHei

Android ImageView随手势变化动态缩放图片_Android

在Android实际项目开发中,经常要用到ImageView这个组件,如果纯粹只是用来显示某一张图片,这个原生的组件是很方便的.但有时候为了效果更炫一点,比如很多软件都有的对图片的处理,随着手势的变化来拉大或缩小图片,这时就需要对原生的ImageView做一些处理来达到我们想要的效果. 原理就是Matrix 和PointF的运用,其实明白后一点都不难.我们需要写一个类继承ImageView来实现我们想要的功能,我这里演示的是类名是:ScaleImageView ,主要是重写onTouchEven

Android手势滑动实现ImageView缩放图片大小_Android

本文推出了两种Android手势实现ImageView缩放图片大小的方法,分享给大家供大家参考,具体内容如下 方法一:将以下代码写到MulitPointTouchListener.java中,然后对你相应的图片进行OnTouchListener. 例如:imageView.setOnTouchListener(new MulitPointTouchListener ()); 在xml中要将ImageView的缩放格式改成Matrix 例如:android:scaleType="matrix&qu

Android手势滑动实现两点触摸缩放图片_Android

学习安卓手势滑动,多点触摸放大缩小图片,分享给大家供大家参考,具体代码如下1.布局文件如下main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" andro

android-求大神帮忙啊!Android用手势缩放图片的时候图片变黑

问题描述 求大神帮忙啊!Android用手势缩放图片的时候图片变黑 源码: public boolean onFling(MotionEvent event1, MotionEvent event2, float velocityX, float velocityY) { // TODO Auto-generated method stub velocityX=velocityX>4000?4000:velocityX; velocityX=velocityX<-4000?-4000:velo

Android imageView图片按比例缩放

android:scaleType可控制图片的缩放方式,示例代码如下: <ImageView android:id="@+id/img" android:src="@drawable/logo" android:scaleType="centerInside" android:layout_width="60dip" android:layout_height="60dip" android:layo

Android手势滑动实现ImageView缩放图片大小

本文推出了两种Android手势实现ImageView缩放图片大小的方法,分享给大家供大家参考,具体内容如下 方法一: 将以下代码写到MulitPointTouchListener.java中,然后对你相应的图片进行OnTouchListener. 例如:imageView.setOnTouchListener(new MulitPointTouchListener ()); 在xml中要将ImageView的缩放格式改成Matrix 例如:android:scaleType="matrix&q

Android手势滑动实现两点触摸缩放图片

学习安卓手势滑动,多点触摸放大缩小图片,分享给大家供大家参考,具体代码如下 1.布局文件如下main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" andr

Android 背景图片的缩放实现

Android 背景图片的缩放 ONE Goal ,ONE Passion ! 我们看到一些效果,控件中的背景图片会慢慢变大,但是控件不会随着图片的放大而变大.效果如下: 分析: 想让图片变大,而且控件本身大小不能改变,那么就要改变图片自身大小,而不能改变控件大小. 实现原理: 1,首先拿到我们要放大的图片bitmap. 2,使用Bitmap.createBitmap().创建一个bitmap的副本. 3,使用matrix去改变图片副本本身大小 4,使用ValueAnimator去根据变化率将副