2011-06-27 17 views
3

サイズが小さく、300 * 300サイズにサイズ変更されたギャラリーからサムネイル画像を撮影しました。アンドロイドでぼかし画像

これを行うと、画像がぼやけて見えます。

ギャラリーから画像を取得

@Override 
    protected void onActivityResult(int requestCode, int resultCode, 
      Intent imageReturnedIntent) { 
     super.onActivityResult(requestCode, resultCode, imageReturnedIntent); 

     switch (requestCode) { 
     case 0: 
      if (resultCode == RESULT_OK) { 
       try { 
        flag = 1; 
        Uri selectedImage = imageReturnedIntent.getData(); 
        String[] filePathColumn = { MediaStore.Images.Media.DATA }; 

        Cursor cursor = getContentResolver().query(selectedImage, 
          filePathColumn, null, null, null); 
        cursor.moveToFirst(); 

        int columnIndex = cursor.getColumnIndex(filePathColumn[0]); 
        String filePath = cursor.getString(columnIndex); // file 
        // path 
        // of 
        // selected 
        // image 
        cursor.close(); 

        // Convert file path into bitmap image using below line. 

        yourSelectedImage = download.getResizedBitmap(
         image.decodeImage(filePath),270,228); 

        // put bitmapimage in your imageview 
        profile_image.setImageBitmap(
          yourSelectedImage); 
       } catch (Exception e) { 
        e.printStackTrace(); 
       } 
      } 
     } 
    } 

画像ピクセル化されたビットマップ画像を拡大もちろん

public Bitmap getResizedBitmap(Bitmap bm, int newHeight, int newWidth) 
    { 
     try 
     { 
      if(bm!=null) 
      { 
      int width = bm.getWidth(); 
      int height = bm.getHeight(); 
      float scaleWidth = ((float) newWidth)/width; 
      float scaleHeight = ((float) newHeight)/height; 
      // create a matrix for the manipulation 
      Matrix matrix = new Matrix(); 
      // resize the bit map 
      matrix.postScale(scaleWidth, scaleHeight); 
      // recreate the new Bitmap 
      resizedBitmap = Bitmap.createBitmap(bm, 0, 0, width, height, matrix, true); 


      } 
      } 
      catch(Exception e) 
      { 
       e.printStackTrace(); 
      } 

     return resizedBitmap; 
    } 
+0

ここに質問はありません!何を知りたいですか? – Kenny

+0

ぼかしの問題を解決する方法。 – Kakey

答えて

2

画像がぼやけ取得のサイズを変更します(ベクトルイメージを使用していて、ビットマップを使用している場合を除く)。 getResizedBitmapメソッドは、新しいサイズに合わせて画像を伸ばす以外に何もしません。あなたの問題を解決する唯一の方法は、より大きなイメージを選択することです(しかし、最終的にアスペクト比の問題にぶつかりますので、実際にスケーリングアルゴリズムを再考する必要があります)。

0

..あなたがそれらを拡大したときに

+0

これを解決するには? – Kakey

+0

より大きい代替画像を検索します。あなたにはあまりにも悪い。 – shernshiou

関連する問題