2013-12-10 117 views
0

創建高質量的縮略圖對於捕獲的圖像有一些困難。我知道網上有許多代碼片段和教程來創建縮略圖。我嘗試了他們,我的問題是我無法制作出高質量的縮略圖圖像。輸出總是像素化的。任何建議,圖書館或鏈接的傢伙?提前致謝。Android:創建高質量的縮略圖

I tried this one但其低質量也。

public static Bitmap scaleBitmap(Bitmap bitmap, int wantedWidth, int wantedHeight) { 
     Bitmap output = Bitmap.createBitmap(wantedWidth, wantedHeight, Config.ARGB_8888); 
     Canvas canvas = new Canvas(output); 
     Matrix m = new Matrix(); 

     m.setScale((float) wantedWidth/bitmap.getWidth(), (float) wantedHeight/bitmap.getHeight()); 

     canvas.drawBitmap(bitmap, m, new Paint()); 

     return output; 
    } 
+0

您正在開發哪種語言版本和開發哪個平臺?你正在開發爲android瀏覽器提供內容的web應用程序嗎? – Benedikt

+0

在Android中使用java的Im。我有一個自定義相機的原生Android應用程序,我想創建我的捕獲圖像的縮略圖。 – Erick

+0

向我們展示您嘗試過的一些代碼。我只能使用android apis定義好的縮略圖。 – Snicolas

回答

-1

你試試這個,

Bitmap src = Thumbnails.getThumbnail(getContentResolver(), ContentUris.parseId(sourceUri), Thumbnails.MINI_KIND, options); 
-1

試試這個

Bitmap ThumbImage =ThumbnailUtils.extractThumbnail(BitmapFactory.decodeFile(imagePath),THUMBSIZE, THUMBSIZE); 

此工具可從API_LEVEl 8. [來源]

0

使用RapidDecoder庫。這是簡單如下:

import rapid.decoder.BitmapDecoder; 
... 
Bitmap bitmap = BitmapDecoder.from(getResources(), R.drawable.image) 
          .scale(width, height) 
          .useBuiltInDecoder(true) 
          .decode(); 

不要忘了,如果你想縮小小於50%和HQ結果使用內置的解碼器。