unter screenshot in libgdx
Ich habe eine Anwendung, in der ich wollen, nehmen screenshot des Bildschirms und speichern Sie es als Bild-und upload auf Facebook. Ich bin mit Libgdx und mein Fokus ist nun auf android.
Kann mir jemand helfen, wie man nehmen screenshot des Bildschirms programmgesteuert und speichern Sie es als Bild ??
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist es jetzt ziemlich einfach. Libgdx bietet ein Beispiel, die gefunden werden können,hier.
Ich musste hinzufügen eine Anweisung, um es arbeiten. Das Bild konnte nicht gespeichert werden, direkt auf
/screenshot1.png
. Einfach voranstellenGdx.files.getLocalStoragePath()
.Source Code:
Einfache Lösung:
Ich möchte nur hinzufügen jährigen hier.
Wenn man einen screeenShot müssen wir überlegen, blackbars und Größe von windows zu. Wenn Sie nicht über einen viewPort (für mobile Geräte), ersetzen Sie einfach Gosse Abmessungen mit 0.
Hier ist, wie Sie richtig ein fullScreen-screenShot:
Dann könnten Sie sparen eine pixmap mit PixmapIO. https://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/PixmapIO.html
HINWEIS: Beachten Sie, dass y ist nicht untere Rinne, aber der Spitze ein. Da der Unterschied im Koordinatensystem. Das auch der Grund, warum das Bild auf den Kopf.
Auch Sie konnte flip mit der pixmap (Nur wenn Sie nicht gehen, um es zu Textur und dann Sprite) mit dem code in den unten stehenden link.
https://stackoverflow.com/a/19746741/2205307
Den Sie erstellen möchten ein FrameBuffer frameBuffer.begin(), render alles, frameBuffer.end().
Dann kann man die Pixmap. Dies hat alles, was Sie brauchen, um es zu speichern als jede Bild-Datei.
Dank ich löste es über den link http://code.google.com/p/libgdx-users/wiki/Screenshots?
aber verwendet PixmapIO.wirtePNG ( pixmap , fileHandle ) anstelle von PNG.toPNG, denn es gibt Fehler, es gibt keine PNG-Klasse.
Dank Stick2 die mir geholfen haben.