在Android中获取图像ThumbNail

我需要一个图像缩略图。 我只知道存储在SD卡中的图像的名称。 谁能帮我。

Solutions Collecting From Web of "在Android中获取图像ThumbNail"

尝试这个。

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

参考这个更多的细节。

使用MediaStore.Images.Thumbnails您可以查询和获取两种缩略图:MINI_KIND:512 x 384缩略图MICRO_KIND:96 x 96缩略图。

使用此调用的优点是缩略图由MediaStorecaching。 所以如果缩略图是以前创build的,检索会更快。

 byte[] imageData = null; try { final int THUMBNAIL_SIZE = 64; FileInputStream fis = new FileInputStream(fileName); Bitmap imageBitmap = BitmapFactory.decodeStream(fis); Float width = new Float(imageBitmap.getWidth()); Float height = new Float(imageBitmap.getHeight()); Float ratio = width/height; imageBitmap = Bitmap.createScaledBitmap(imageBitmap, (int)(THUMBNAIL_SIZE * ratio), THUMBNAIL_SIZE, false); ByteArrayOutputStream baos = new ByteArrayOutputStream(); imageBitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos); imageData = baos.toByteArray(); } catch(Exception ex) { } 

如果你喜欢HQ缩略图,那么使用[RapidDecoder] [1]库。 简单如下:

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

如果你想缩小小于50%和HQ结果,不要忘记使用内置解码器。