Je dois mettre à l'échelle une image avant de la créer et je ne veux le faire que si elle dépasse 1024KB (par exemple).
En faisant ce qui suit, je peux mettre l'image à l'échelle, mais je n'ai besoin de mettre à l'échelle que celles qui sont plus grandes que la taille donnée.
Bitmap bmImg = null;
InputStream is = url.openStream();
BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inSampleSize = 10;
bmImg = BitmapFactory.decodeStream(is,null,opts);
Comment puis-je obtenir la taille du bitmap (je souhaite connaître le nombre d'octets, pas la taille après décompression) ?
Edit :
J'essaie ça :
BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inJustDecodeBounds = true;
Bitmap bmImg=BitmapFactory.decodeStream(is,null,opts);
Log.e("optwidth",opts.outWidth+"");
Bitmap bmImg1 = BitmapFactory.decodeStream(is);
La première fois que j'utilise l'InputStream (is) pour le décoder avec la fonction "inJustDecodeBounds", cela fonctionne bien et je peux obtenir les dimensions du bitmap. Le problème est que la deuxième fois que je l'utilise pour décoder l'image, aucune image ne s'affiche.
Qu'est-ce que je fais de mal ?