我尝试了很多方法来使用 corona sdk 捕获屏幕,我读到
http://docs.coronalabs.com/api/library/display/captureScreen.html

Corona: how to capture a screen in corona?

但是,当我运行该程序时,Corona sdk 卡住,我不得​​不关闭它
我在 Windows 上使用 Corona SDK,有时我会收到“运行时错误 R6025 PURE 虚拟函数调用”,我尝试了很多与其他人一起使用的示例代码,这是我的代码

_W = display.viewableContentWidth
_H = display.viewableContentHeight
local background = display.newRect(0, 0, 320, 480);
background:setFillColor(255,255,255);
local foo = display.newImageRect("images/foo.png",100,100);
foo.anchorX=0.5
foo.anchorY=0.5
foo.x = _W * 0.5;
foo.y = _H * 0.5;
local screenShot = display.captureScreen(true);
foo:removeSelf();
background:removeSelf();
screenShot.xScale = 0.5;
screenShot.yScale = 0.5;
screenShot.rotation = 45;

这是我的 build.settings 文件
androidPermissions =
{
    "android.permission.VIBRATE",
    "android.permission.WRITE_EXTERNAL_STORAGE"
},

最佳答案

您也可以尝试使用 display.save 将屏幕保存到文件。

检查 Lerg's code 这样做

当按下“s”键时,此代码将在模拟器中保存屏幕截图

if app.isSimulator then
    Runtime:addEventListener('key', function (event)
        if event.keyName == 's' and event.phase == 'down' then
            local scene = storyboard.getScene(storyboard.getCurrentSceneName())
            if scene and scene.view then
                display.save(scene.view, display.pixelWidth .. 'x' .. display.pixelHeight .. '_' .. math.floor(system.getTimer()) .. '.png')
                return true
            end
         end
    end)
end

关于lua - 在 Corona sdk 上捕获屏幕,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22096721/

10-15 02:23