2013-02-25 100 views
1

我想顯示一個screenCap後,它是保存screenCap,但我怎麼能得到最新的screenCap的url?顯示截圖後的截圖

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

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

你是指'PNG'文件的路徑? – hjpotter92 2013-02-25 15:18:49

+0

是display.newImage(「PNG文件的路徑」) – 2013-02-25 15:45:12

回答

1

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

圖片將被保存在一個名稱圖片X.png設備庫。之後,您需要自定義選擇最新的索引圖片。

順便說一句,你可以試試看display.save(「name」,路徑),這將一直是最後保存的圖片。

+0

display.save(「name」,path)沒有顯示任何內容? – 2013-02-26 18:22:36

+0

path是你的應用程序沙箱的路徑,如:System.DocumentsDirectoy,並保存圖像後,您可以從那裏重新加載。 – Arnold 2013-02-28 11:54:00

1

display.captureBounds很適合將整個屏幕保存到目錄。但它通常會保存上次索引增加的文件。所以可能難以正確讀取它們。所以我更喜歡display.save。但這不是一條直線。

這樣做,你必須:

  • 首先創建一個displayGroup
  • 然後add屏幕對象到該組。
  • Return顯示組。使用保存顯示的整個組。
  • 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) 

保持編碼....... .... :)