Android:创建高质量的缩略图

时间:2013-12-10 07:59:28

标签: java android image scale

我为拍摄的图像创建高质量缩略图时遇到了一些困难。我知道网络上有许多代码段和教程可以创建缩略图。我尝试过它们,我的问题是我无法生成高质量的缩略图。输出始终是像素化的。任何建议,图书馆或链接家伙?提前致谢。

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;
    }

3 个答案:

答案 0 :(得分:0)

使用RapidDecoder库。它很简单如下:

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

如果您希望缩小小于50%和HQ结果,请不要忘记使用内置解码器。

答案 1 :(得分:-1)

你试过这个吗,

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

答案 2 :(得分:-2)

试试这个

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

此实用程序可从API_LEVEl 8获得。[来源]