Androidのローカル画像とbitmapの相互変換


開発では、ローカルに保存されている画像とbitmapの相互変換の問題によく遭遇します.Androidではbitmapを使って画像データを記録していますが、関連する変換は少なくありません.だから、私はここで関連する変換方法を記録して、使用するために使用します.
  • bitmapをローカルピクチャ
  • に変換
    /**
     *  Bitmap      
     * @param path           
     * @param bitmap     Bitmap
     */
    public static void saveImage(String path, Bitmap bitmap){
        try {
            BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(path));
            bitmap.compress(Bitmap.CompressFormat.JPEG,80,bos);
            bos.flush();
            bos.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
  • ローカルピクチャをbitmap
  • に変換
    /**
     *        Bitmap
     * @param path        
     * @return
     */
    public static Bitmap openImage(String path){
        Bitmap bitmap = null;
        try {
            BufferedInputStream bis = new BufferedInputStream(new FileInputStream(path));
            bitmap = BitmapFactory.decodeStream(bis);
            bis.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return bitmap;
    }
  • 他の単純なbitmap変換方法
  • public void otherBitmapWay(String path){
        //              ,             Bitmap  。
        Bitmap bitmap = BitmapFactory.decodeFile(path);
        //                。        getResources(),      drawable     id,  
        Bitmap bitmap1 = BitmapFactory.decodeResource(getResources(),R.mipmap.aaa);
    }