Cómo obtener escalado Bitmap de ImageView
Estoy teniendo una Activity
que tiene un ImageView
encargo definido en el XML para la funcionalidad del pellizcar del zumbido en una imagen. Ahora, mi problema es que quiero obtener el Bitmap
de Bitmap
escala de la funcionalidad Pinch Zoom. Por ejemplo, si el usuario realiza un zoom sobre la imagen, entonces quiero almacenar el tamaño exacto y la posición de la imagen como mapa de bits.
Esta es mi imagen personalizada declarada en XML.
<com.cam.view.PinchZoom_ImageView android:id="@+id/gallery_selected_image_view" android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/icon" android:scaleType="center" />
ACTUALIZAR:
Estoy probando el siguiente código para obtener la imagen a escala, pero devuelve un mapa de bits en blanco.
pinchZoom.setDrawingCacheEnabled(true); pinchZoom.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED)); pinchZoom.layout(0, 0, pinchZoom.getMeasuredWidth(), pinchZoom.getMeasuredHeight()); pinchZoom.buildDrawingCache(true); Bitmap_gallery_Item = Bitmap.createBitmap(pinchZoom.getDrawingCache()); pinchZoom.setDrawingCacheEnabled(false);
Cualquier ayuda sería apreciada. Gracias
Bueno, finalmente no puedo creer que era sólo un código de una línea. Finalmente tuve éxito usando la matrix
. La solución es muy simple que estaba almacenando la translation and scaling
de la imagen en una matriz. Por lo tanto, declaré que la matrix
final como public static
y utiliza esa matriz para crear dibujar un mapa de bits en lienzo.
Canvas comboImage = new Canvas(cs); background = Bitmap.createScaledBitmap(background, width, height, true); comboImage.drawBitmap(background, 0, 0, null); comboImage.drawBitmap(foreground, PinchZoom_ImageView.matrix, null);
Como se puede ver aquí PinchZoom_ImageView.matrix
. Es una matrix
que contiene mi posición final de la imagen escalada y traducida que había declarado como public static
.
Si tiene scaleType="fitxy"
entonces puede usar un factor de escala para ampliar o reducir la anchura / altura del ImageView – También significa que puede retirar la altura / anchura exacta de la imagen porque tiene las mismas dimensiones que Es un contenedor.
HTH
Esta publicación incluye Recortar la imagen de la Galería y permite al usuario recortar la imagen y guardar la imagen recortada y los shows en ImageView.
Parece que le ayudará a algunos se extiende
Imagen Recortar y mostrar la imagen recortada en la vista