In android, when we open a screenshot from gallery. It comes blurred for 2 secs and then auto adjusts itself.
But when I am using this screenshot image to set on a imageview using image path as :,
Image Path is: /mnt/sdcard/ScreenCapture/SC20130219-124221.png
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);
}
Another case: While getting the Bitmap from the URL as :
URL url = new URL(urlTarget);
BitmapFactory.Options mOptions = new BitmapFactory.Options();
mOptions.inSampleSize=1;
Bitmap bmp = BitmapFactory.decodeStream(url
.openConnection().getInputStream(),null,mOptions);
Then the image is not auto adjusted itself. It comes BLURRED. THIS IS MY PROBLEM.
IT IS IN THE CASE OF SCREENSHOT ONLY.
tHANKS
mOptions.inSampleSize=2;
This is going to skip alternate pixel data and load an image 1/2 the original size. Of-course it will look blurred and highly aliased, because this is no where near a good image scaling algorithm.
As far as Gallery app is concerned, it loads progressively, it shows a thumbnail, or a quick render, while full resolution image is being loaded into memory.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With