Captura de pantalla en andengine da al revés la imagen de espejo

En mi situación no tengo uso RenderSurfaceView. Quiero tomar una captura de pantalla de mi escena. Pero cuando guardo la captura de pantalla que muestra al revés la imagen de espejo. No puedo entender lo que estoy haciendo mal aquí.

Aquí está mi código

attachChild(screenCapture); share_clicked = 1; final int viewWidth = (int)camera.getWidth(); final int viewHeight = (int)camera.getHeight(); Log.d("camera width", "View width :" + viewWidth); Log.d("camera height", "View height :" + viewHeight); File direct = new File( Environment.getExternalStorageDirectory() + "/Word"); if (!direct.exists()) { if (direct.mkdir()) ; // directory is created; } screenCapture.capture( viewWidth, viewHeight, direct.getAbsolutePath() + "/word" + System.currentTimeMillis() + ".png", new IScreenCaptureCallback() { public void onScreenCaptured( final String pFilePath) { activity .runOnUiThread(new Runnable() { public void run() { Toast.makeText( activity, "Image Successfully saved to 'Word' folder in SD Card.", Toast.LENGTH_SHORT) .show(); } }); } public void onScreenCaptureFailed( final String pFilePath, final Exception pException) { activity.runOnUiThread(new Runnable() { public void run() { Toast.makeText( activity, "Failed saving the image! Please check SD card.", Toast.LENGTH_SHORT) .show(); } }); } }); 

! [Esta es la captura de pantalla que obtiene 1

Sería de gran ayuda si alguien pudiera buscar esto para mí. Gracias.

One Solution collect form web for “Captura de pantalla en andengine da al revés la imagen de espejo”

Actualizar GLES2-AnchorCenter

AndEngine / src / org / andengine / entity / util / ScreenGrabber.java

 private static Bitmap grab(final int pGrabX, final int pGrabY, final int pGrabWidth, final int pGrabHeight) { final int[] pixelsRGBA_8888 = new int[pGrabWidth * pGrabHeight]; final IntBuffer pixelsRGBA_8888_Buffer = IntBuffer.wrap(pixelsRGBA_8888); // TODO Check availability of OpenGL and GLES20.GL_RGBA combinations that require less conversion operations. GLES20.glReadPixels(pGrabX, pGrabY, pGrabWidth, pGrabHeight, GLES20.GL_RGBA, GLES20.GL_UNSIGNED_BYTE, pixelsRGBA_8888_Buffer); /* Convert from RGBA_8888 (Which is actually ABGR as the whole buffer seems to be inverted) --> ARGB_8888. */ final int[] pixelsARGB_8888 = GLHelper.convertRGBA_8888toARGB_8888(pixelsRGBA_8888); final int[] pixels = new int[pGrabWidth * pGrabHeight]; for (int y = 0; y < pGrabHeight; y++) { for (int x = 0; x < pGrabWidth; x++) { pixels[x + ((pGrabHeight - y - 1) * pGrabWidth)] = pixelsARGB_8888[x + ((pGrabY + y) * pGrabWidth)]; } } return Bitmap.createBitmap(pixels, pGrabWidth, pGrabHeight, Config.ARGB_8888); } 
  • Comportamiento de ciclo de vida extraño en mi aplicación Screen Saver
  • Instanciar una clase interna (Preferencia) en un archivo xml
  • Determinar si el dispositivo tiene pantalla táctil o no
  • ¿Evita que la orientación de Live Wallpaper cambie cuando se abre una aplicación y se cambia la orientación?
  • Android y el soporte de múltiples diseños de pantallas
  • Orientación de la pantalla de Android NDK
  • Android crea accesos directos en la pantalla de inicio
  • ¿Cómo utilizar ADB para enviar eventos táctiles al dispositivo utilizando comando sendevent?
  • Actividad con una altura específica frente a la lockscreen
  • Android obtener el tamaño de la pantalla de la orientación de la pantalla de otros
  • ¿Cómo hacer que mi aplicación se vea igual en todos los dispositivos?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.