Представление поверхности в виде растрового изображения в Android

Я использую cocos2d.

Теперь я добавил несколько изображений в слой и немного поэкспериментировал.

Я пытаюсь сохранить весь экран как файл изображения.

Как я могу это сделать?


person Noman    schedule 12.12.2011    source источник


Ответы (2)


Насколько я понимаю, у cocos2d-android также есть класс CCRenderTexture с методом saveBuffer. В этом случае имейте взгляните на мою демонстрационную программу CCRenderTexture и сообщение в блоге для cocos2d-iphone, в котором приведен пример создания снимка экрана с помощью CCRenderTexture и saveBuffer. Тот же принцип применим и к cocos2d-android.

person LearnCocos2D    schedule 13.12.2011

Единственный способ захватить содержимое SurfaceView — это визуализировать его с помощью OpenGL. Вы можете использовать glReadPixels() для захвата содержимого поверхности. Если вы рисуете на SurfaceView с помощью Canvas, вы можете просто создать Bitmap, создать новый Canvas для этого Bitmap и выполнить свой код рисования с новым Canvas.

person Romain Guy    schedule 12.12.2011
comment
см. эту ссылку. Я описал свою проблему здесь более подробно. stackoverflow.com/ вопросы/8531481/ - person Noman; 16.12.2011