通過以下對堆棧溢出this解決方案,我想出了下面的Java類:製作屏幕在LibGDX通過按PRT血肌酐按鈕
public final class Screenshot {
private static byte[] pixels;
private static Pixmap pixmap;
public static void take() {
pixels = ScreenUtils.getFrameBufferPixels(0, 0,
Gdx.graphics.getBackBufferWidth(),
Gdx.graphics.getBackBufferHeight(),
true);
pixmap = new Pixmap(Gdx.graphics.getBackBufferWidth(),
Gdx.graphics.getBackBufferHeight(),
Pixmap.Format.RGBA8888);
BufferUtils.copy(pixels, 0, pixmap.getPixels(), pixels.length);
PixmapIO.writePNG(Gdx.files.external("./screenshot_" + new Date().getTime() + ".png"), pixmap);
pixmap.dispose();
pixels = null;
}
}
調用Screenshot().take()
將採取LibGDX渲染緩衝和轉儲它一個PNG文件。正是我想要的。
我的問題是如果有'捕捉'打印屏幕按鈕的好方法。有我可以使用的打印屏幕鍵碼嗎?
使用[key bindings](https://docs.oracle.com/javase/tutorial/uiswing/misc/keybinding.html)與此關鍵代碼:http://stackoverflow.com/a/10793610/300257 –
@GilbertLeBlanc感謝您的評論!你能否請教我如何正確使用代碼示例作爲答案?如果你能爲我做到這一點,我可以接受它作爲答案。 –