图片文件和Bitmap之间的转换

来源:互联网 发布:淘宝云客服逆向考试 编辑:程序博客网 时间:2024/05/20 08:41

图片文件转为Bitmap对象

new DateFormat();String name1 = DateFormat.format("yyyyMMdd_hhmmss",                Calendar.getInstance(Locale.CHINA))                + "_" + "TTTTTTTT" + ".jpg";StringBuffer imagePATH = new StringBuffer("xxx文件夹路径");imagePATH.append(name1);String filePath = imagePATH.toString();Bitmap bitmap=BitmapFactory.decodeFile(filePath);

如果图片过大,可能导致Bitmap对象装不下图片
解决

String filePath=imagePATH.toString();Bitmap bitmap=BitmapFactory.decodeFile(filePath,getBitmapOption(2)); //将图片的长和宽缩小为原来的1/2private Options getBitmapOption(int inSampleSize){        System.gc();        BitmapFactory.Options options = new BitmapFactory.Options();        options.inPurgeable = true;        options.inSampleSize = inSampleSize;        return options;}

Bitmap对象保存为图片文件

    public void saveBitmapFile(Bitmap bitmap){                File file = new File(imagePATH.toString());//将要保存图片的路径                try {                        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(file));                        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos);                        bos.flush();                        bos.close();                } catch (IOException e) {                        e.printStackTrace();                }    }
0 0