拍摄后显示屏幕截图

时间:2013-02-25 14:19:48

标签: lua corona

我试图在拍摄后显示一个screenCap,它正在保存screenCap,但我怎样才能获得最新的screenCap网址?

local screenCap = display.captureScreen( true )
local alert = native.showAlert( "Success", "Screen Capture Saved to Library", { "OK" } )

NewsScreenShot = display.newImage( "  path to the PNG file  " )

2 个答案:

答案 0 :(得分:1)

http://jp.anscamobile.com/dev/reference/index/displaycapturescreen/index.html

图片将保存在设备库中,名称为Picture X.png。在此之后,您需要自定义选择最新的索引图片。

顺便说一句,你可以尝试使用display.scan(“name”,path),这将是最后保存的图片。

答案 1 :(得分:1)

display.captureBounds适用于将整个屏幕保存到目录中。但它通常会随着最后一个索引的增加而保存文件。所以可能很难正确阅读它们。所以我更喜欢display.save。但这不是直截了当的。

为此,您必须:

  • 首先创建一个displayGroup
  • 然后add屏幕对象指向该组。
  • Return显示组。
  • 使用display.save保存显示的整个组。
  • system.DocumentsDirectory
  • 显示所需的图像

我在这里给出一个样本:

-- creating the display group --
local localGroup = display.newGroup()  

-- creating display objects and adding it to the group --
local bg = display.newRect(0,0,_w,_h)
bg.x = 160
bg.y = 240
bg:setFillColor(150)
localGroup:insert(bg)

local rect = display.newRect(0,0,50,50)
rect.x = 30+math.random(260)
rect.y = 30+math.random(420)
localGroup:insert(rect)

-- Take Screenshot --
local function saveGroupImages()
  -- take screen shot to baseDirectory --
  local baseDir = system.DocumentsDirectory
  display.save( localGroup, "myScreenshot.jpg", baseDir )
end
rect:addEventListener("tap",saveGroupImages)

在此之后,您可以阅读文件并按如下方式显示:

local readImage = display.newImage( "myScreenshot.jpg" ,system.DocumentsDirectory , 50, 100  )
readImage.x = 160
readImage.y = 240
readImage:scale(0.5,0.5)

保持编码...........:)