首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图像未自动调整

问图像未自动调整
EN

Stack Overflow用户
提问于 2013-02-22 18:32:02
回答 3查看 395关注 0票数 5

在android中,当我们打开图库中的截图时。它会模糊2秒,然后自动调整。

但是当我使用这个截图图像在使用图像路径的图像视图上设置时:,

镜像路径为: /mnt/sdcard/ScreenCapture/SC20130219-124221.png

代码语言:javascript
复制
private void showImage(String imgPath) {
        // TODO Auto-generated method stub

        System.out.println("Image Path is:  "+imgPath);

        ImageView openImage=(ImageView)findViewById(R.id.img_fullScreen);
        ExifInterface exifMedia = null;
        try {
            exifMedia = new ExifInterface(imgPath);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        String exifOrint = exifMedia.getAttribute(ExifInterface.TAG_ORIENTATION);
        int exifOrientation = Integer.parseInt(exifOrint);
        System.out.println("Orientation Tag is:"+exifOrientation);
        BitmapFactory.Options mOptions=new BitmapFactory.Options();
        mOptions.inSampleSize=2;
        Bitmap imgBitmap = BitmapFactory.decodeFile(imgPath,mOptions);
        //Runtime.getRuntime().gc();

        imgBitmap = getResizedBitmapImage(imgBitmap, 200, 200, exifOrientation);
        openImage.setImageBitmap(imgBitmap);
    }

另一种情况:从URL获取位图时:

代码语言:javascript
复制
URL url = new URL(urlTarget);
            BitmapFactory.Options mOptions = new BitmapFactory.Options();
            mOptions.inSampleSize=1;
            Bitmap bmp = BitmapFactory.decodeStream(url
                    .openConnection().getInputStream(),null,mOptions);

那么图像本身就不会自动调整。它变得模糊了。这是我的问题。

它只在截图的情况下。

谢谢

EN

回答 3

Stack Overflow用户

发布于 2013-03-02 16:11:56

mOptions.inSampleSize=2;这将跳过交替的像素数据,并加载原始大小的1/2的图像。当然,它看起来是模糊的和高度混叠的,因为这不是一个好的image scaling算法。

就Gallery应用程序而言,它会逐步加载,它会显示缩略图或快速渲染,而全分辨率图像正在加载到内存中。

票数 1
EN

Stack Overflow用户

发布于 2013-03-02 13:30:46

这只是Android Gallery应用程序的一个棘手行为(也是一个很好的例子,展示了如何在必须加载大图像的情况下获得更好的用户体验)。

首先,当您单击图库中的图像缩略图时,它将完全使用该缩略图显示在ImageView中。因为缩略图很小,需要放大它来修复ImageView,所以你会看到它是模糊的。

在向用户显示缩略图的同时,它还对原始图像进行解码。完成所有操作后,将显示原始图像而不是缩略图。

在缩略图和原始图像之间切换时,图库也会使用动画(默认布局动画可以在API演示中找到)

票数 0
EN

Stack Overflow用户

发布于 2013-03-04 14:09:51

将您的代码从mOptions.inSampleSize = 2更改为mOptions.inSampleSize =1,您的问题肯定会得到解决

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15022053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档