//BitmapFactory工具方法:
BitmapFactory.decodeFile(f.getAbsolutePath(), op);
FileInputStream in = new FileInputStream(f);
Bitmap bm = BitmapFactory.decodeStream(in, null, op);
BitmapFactory.decodeResource(context.getResources(), id,op);
return BitmapFactory.decodeResource(context.getResources(), id,op);
InputStream in=context.getResources().openRawResource(id);
Bitmap bm=BitmapFactory.decodeStream(in);
//获得指定路径图片
public class BitmapUtils {
public static Bitmap getBitmap(String path) {
return BitmapFactory.decodeFile(path);
}
//获取缩放倍数之后的图片
public static Bitmap getBitmap(byte[] data, int scale) {
Options opts = new Options();
opts.inSampleSize = scale;
return BitmapFactory.decodeByteArray(data, 0, data.length, opts);
}
//获取指定大小尺寸且不加载像素的图片
public static Bitmap getBitmap(byte[] data, int width, int height) {
Options opts = new Options();
opts.inJustDecodeBounds = true;
BitmapFactory.decodeByteArray(data, 0, data.length, opts);
int xScale = opts.outWidth / width;
int yScale = opts.outHeight / height;
return getBitmap(data, xScale > yScale ? xScale : yScale);
}
//将图片压缩保存到本地
public static void save(Bitmap bm, File savePath) throws IOException {
if (bm != null && savePath != null) {
if (!savePath.getParentFile().exists()) {
savePath.getParentFile().mkdirs();
}
if (!savePath.exists()) {
//创建新目录
savePath.createNewFile();
}
bm.compress(CompressFormat.JPEG, 100,new FileOutputStream(savePath));
}
}
}
本文介绍BitmapFactory工具类的使用方法,包括如何加载不同来源的图片、实现图片的缩放及尺寸调整,以及如何将Bitmap保存到本地文件。还提供了一些实用的辅助方法,帮助开发者更好地管理和操作图片资源。
399

被折叠的 条评论
为什么被折叠?



