我有一個高度200和400像素的圖像。我想要顯示所有這些圖像的方式是高度200像素。我的意思是說,無論圖像的大小,而顯示該圖像我想要顯示圖像高達200像素的高度。圖像的其餘部分是隱藏的。那麼如何做到這一點。我已經使用了一個代碼解碼,但在這裏它拉伸更大的圖像,然後顯示它。在我的情況下,我不希望圖像伸展,但只顯示圖像高達200像素。如何解碼圖像文件
代碼中,我使用
private Bitmap decodeFile(File f)
{
try
{
// decode image size
BitmapFactory.Options o = new BitmapFactory.Options();
// Find the correct scale value.
final int REQUIRED_SIZE = 200;
int height_tmp = o.outHeight;
while(true)
{
if(height_tmp/2 < REQUIRED_SIZE)
break;
height_tmp/=2;
}
o.inSampleSize = height_tmp;
return BitmapFactory.decodeStream(new FileInputStream(f), null, o);
}
catch (FileNotFoundException e)
{}
return null;
}
http://stackoverflow.com/a/10703256/884674您可以在運行時也調整位圖大小 –