高さ200ピクセルと400ピクセルの画像があります。これらすべての画像を表示する方法は、高さ 200 ピクセルです。画像のサイズが何であれ、その画像を表示しながら、高さ200ピクセルまでの画像を表示したいということです。画像の残りの部分は非表示になります。では、どのようにそれを行うことができますか?デコードに 1 つのコードを使用しましたが、ここではより大きなサイズの画像を引き伸ばしてから表示します。私の場合、画像を引き伸ばしたくはありませんが、高さ 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;
}