Estoy creando una aplicación y quiero configurar una vista de galería. No quiero que las imágenes en la vista de la galería sean de tamaño completo. ¿Cómo cambio el tamaño de las imágenes en Android?¿Cómo cambiar el tamaño de la imagen en Android?
72
A
Respuesta
146
Probar:
Bitmap yourBitmap;
Bitmap resized = Bitmap.createScaledBitmap(yourBitmap, newWidth, newHeight, true);
o:
resized = Bitmap.createScaledBitmap(yourBitmap,(int)(yourBitmap.getWidth()*0.8), (int)(yourBitmap.getHeight()*0.8), true);
+8
Muestra la imagen borrosa a baja escala ... –
4
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize=2; //try to decrease decoded image
Bitmap bitmap=BitmapFactory.decodeStream(is, null, options);
bitmap.compress(Bitmap.CompressFormat.JPEG, 70, fos); //compressed bitmap to file
6
Puede utilizar Matrix para cambiar el tamaño de imagen de la cámara ....
BitmapFactory.Options options=new BitmapFactory.Options();
InputStream is = getContentResolver().openInputStream(currImageURI);
bm = BitmapFactory.decodeStream(is,null,options);
int Height = bm.getHeight();
int Width = bm.getWidth();
int newHeight = 300;
int newWidth = 300;
float scaleWidth = ((float) newWidth)/Width;
float scaleHeight = ((float) newHeight)/Height;
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth, scaleHeight);
Bitmap resizedBitmap = Bitmap.createBitmap(bm, 0, 0,Width, Height, matrix, true);
BitmapDrawable bmd = new BitmapDrawable(resizedBitmap);
6
Para capturar la imagen y cambiar el tamaño eso.
Bitmap image2 = (Bitmap) data.getExtras().get("data");
img.setImageBitmap(image2);
String incident_ID = IncidentFormActivity.incident_id;
imagepath="/sdcard/RDMS/"+incident_ID+ x + ".PNG";
File file = new File(imagepath);
try {
double xFactor = 0;
double width = Double.valueOf(image2.getWidth());
Log.v("WIDTH", String.valueOf(width));
double height = Double.valueOf(image2.getHeight());
Log.v("height", String.valueOf(height));
if(width>height){
xFactor = 841/width;
}
else{
xFactor = 595/width;
}
Log.v("Nheight", String.valueOf(width*xFactor));
Log.v("Nweight", String.valueOf(height*xFactor));
int Nheight = (int) ((xFactor*height));
int NWidth =(int) (xFactor * width) ;
bm = Bitmap.createScaledBitmap(image2,NWidth, Nheight, true);
file.createNewFile();
FileOutputStream ostream = new FileOutputStream(file);
bm.compress(CompressFormat.PNG, 100, ostream);
ostream.close();
4
bm = Bitmap.createScaledBitmap(bitmapSource, width, height, true);
:)
28
public Bitmap resizeBitmap(String photoPath, int targetW, int targetH) {
BitmapFactory.Options bmOptions = new BitmapFactory.Options();
bmOptions.inJustDecodeBounds = true;
BitmapFactory.decodeFile(photoPath, bmOptions);
int photoW = bmOptions.outWidth;
int photoH = bmOptions.outHeight;
int scaleFactor = 1;
if ((targetW > 0) || (targetH > 0)) {
scaleFactor = Math.min(photoW/targetW, photoH/targetH);
}
bmOptions.inJustDecodeBounds = false;
bmOptions.inSampleSize = scaleFactor;
bmOptions.inPurgeable = true; //Deprecated API 21
return BitmapFactory.decodeFile(photoPath, bmOptions);
}
5
// foto es la imagen de mapa de bits
Bitmap btm00 = Utils.getResizedBitmap(photo, 200, 200);
setimage.setImageBitmap(btm00);
And in Utils class :
public static Bitmap getResizedBitmap(Bitmap bm, int newHeight, int newWidth) {
int width = bm.getWidth();
int height = bm.getHeight();
float scaleWidth = ((float) newWidth)/width;
float scaleHeight = ((float) newHeight)/height;
Matrix matrix = new Matrix();
// RESIZE THE BIT MAP
matrix.postScale(scaleWidth, scaleHeight);
// RECREATE THE NEW BITMAP
Bitmap resizedBitmap = Bitmap.createBitmap(bm, 0, 0, width, height,
matrix, false);
return resizedBitmap;
}
2
resized = Bitmap.createScaledBitmap(yourImageBitmap,(int)(yourImageBitmap.getWidth()*0.9), (int)(yourBitmap.getHeight()*0.9), true);
0
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize = 10;
FixBitmap = BitmapFactory.decodeFile(ImagePath, options);
//FixBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.gv);
byteArrayOutputStream = new ByteArrayOutputStream();
FixBitmap.compress(Bitmap.CompressFormat.JPEG, 80, byteArrayOutputStream); //compress to 50% of original image quality
byteArray = byteArrayOutputStream.toByteArray();
ConvertImage = Base64.encodeToString(byteArray, Base64.DEFAULT);
Cuestiones relacionadas
- 1. ¿Cómo cambiar el tamaño de la imagen original en un tamaño de imagen común en Java?
- 2. Cómo cambiar el tamaño de imagen UIBarButtonItem
- 3. ckfinder cambiar el tamaño de la imagen
- 4. UIImageView: ¿Cambiar el tamaño al tamaño de la imagen?
- 5. Cambiar el tamaño de la imagen JPEG al tamaño especificado
- 6. ¿Cómo crear mover/cambiar el tamaño de animaciones en Android?
- 7. ¿Cómo cambiar el tamaño de una imagen que elegí de la galería en Android?
- 8. Blackberry: cómo cambiar el tamaño de la imagen?
- 9. Android: cambiar el tamaño de la vista de la imagen en XML
- 10. Cambiar el tamaño de la imagen original en Paperclip
- 11. Cambiar el tamaño de la imagen en Core Graphics
- 12. Cambiar el tamaño de la imagen de mapa de bits
- 13. Botón Tamaño de la imagen en android
- 14. Android: Cómo cambiar el tamaño del RadioButton
- 15. Obtener tamaño de imagen real, después de cambiar el tamaño
- 16. cambiar el tamaño de la imagen al guardar
- 17. cambiar la forma de la imagen en android
- 18. cómo reducir el tamaño de la imagen grande al tamaño de la miniatura en android
- 19. ¿Cambiar el tamaño de la imagen con django?
- 20. ASP.NET imagen Cambiar el tamaño y Recorte
- 21. Cambiar el tamaño de la imagen de Android después de llamar a la cámara intento
- 22. Girar imagen * sin * cambiar el tamaño
- 23. Cambiar el tamaño de la imagen que utiliza Jcrop
- 24. Android ¿Cambia el tamaño de la imagen según el tamaño de pantalla?
- 25. Cambiar el tamaño de una imagen en el balanceo
- 26. ¿Cómo puedo cambiar el tamaño de una imagen sin estirarla?
- 27. Cómo reducir el tamaño de imagen JPEG en Android
- 28. Cambiar el tamaño del mapa de imagen en el tamaño de la ventana
- 29. Cambiar el tamaño de la imagen con JavaScript
- 30. Cómo cambiar el tamaño de fuente de tabhost en android
desea reducir el tamaño de imagen o si sólo quiere mostrar pequeño? – MAC