2017-06-19 95 views
0

我有這樣的代碼:如何自動將拍攝的圖像保存在UWP應用程序中?

CameraCaptureUI captureUI = new CameraCaptureUI(); 
captureUI.PhotoSettings.AllowCropping = false; 
StorageFile photo = await captureUI.CaptureFileAsync(CameraCaptureUIMode.Photo); 

我如何能實現自動保存圖像選項時,點擊捕捉按鈕?

+0

我定你的帖子,但我不知道它是好的,我做過什麼,在它的代碼。檢查最後一行並根據需要進行修復。 – peterh

+0

@peterh'await'和'captureUI'應該有一個空格。 – AVK

回答

0

如何在點擊捕捉按鈕時自動保存圖像選項?

包含捕獲的照片被賦予一個動態生成的名稱,並保存在我們的應用程序的本地文件夾中,如果我們不取消拍攝,所以如果我們在拍攝按鈕點擊沒有點擊確認按鈕,照片將StorageFile自動保存在我們應用程序的TempState文件夾中。

欲瞭解更多信息,請參考Capture photos and video with Windows built-in camera UI

爲了更好地組織您捕獲的照片,您可能需要將文件移動到其他文件夾。請參閱下面的示例,其中顯示瞭如何將最新的捕獲照片從TempState文件夾複製到LocalFolder。

例如:

CameraCaptureUI captureUI = new CameraCaptureUI(); 
captureUI.PhotoSettings.AllowCropping = false; 
StorageFile photo = await captureUI.CaptureFileAsync(CameraCaptureUIMode.Photo); 
Windows.Storage.StorageFolder localFolder = Windows.Storage.ApplicationData.Current.TemporaryFolder; 
var allFiles =await localFolder.GetFilesAsync(); 
foreach (StorageFile item in allFiles.OrderByDescending(a => a.DateCreated)) 
    { 
     StorageFolder destinationFolder = await ApplicationData.Current.LocalFolder.CreateFolderAsync("ProfilePhotoFolder", CreationCollisionOption.OpenIfExists); 
     await item.CopyAsync(destinationFolder, DateTimeOffset.Now.ToString("yyyyMMddHHmmssfff") + ".jpg", NameCollisionOption.ReplaceExisting); 
     await item.DeleteAsync(); 
     return; 
    } 
+0

謝謝,我需要做的是,當點擊捕捉按鈕時,它會要求確認照片,然後保存。需要跳過確認部分,點擊捕捉按鈕照片時應自動保存。 –

+0

@IndikaPrashad當我們點擊捕捉按鈕時,它已經保存了照片。如果我們不點擊確認按鈕,它也會保存照片。您可以在不點擊確認按鈕的情況下進行測試,您將在TempState文件夾中看到該照片。 –

+0

@IndikaPrashad我已經更新了答案,請檢查它。 –

相關問題