以编程方式显示使用CameraCaptureTask创建的CameraRoll图像

时间:2014-01-06 20:33:38

标签: windows-phone-8 cameracapturetask camera-roll

this thread's第一回答所述,对于WP8,相机捕捉任务会自动将其创建的任何图像的副本保存到相机胶卷。如果以这种方式保存图像,是否可以以编程方式直接从相机胶卷中的副本显示应用程序中的图像,而无需在隔离存储或应用程序数据等位置创建第二个副本?如果是这样,您将如何获得指向这个新保存图像的相机胶卷位置的指针?

如果可能的话,我希望避免每个图像的多个冗余副本浮动。如果在相机胶卷中使用副本将允许我利用CameraCaptureTask功能而不是直接使用Camera API,那么这对我来说是理想的。感谢。

1 个答案:

答案 0 :(得分:0)

如果您只需要图像的位置,则会在OriginalFileName事件的PhotoResult Completed属性中提供该属性。

例如,用模拟器拍照给出“C:\ Data \ Users \ Public \ Pictures \ Camera Roll \ WP_20140106_002.jpg”

现在您拥有了它,您可以使用BitMapImage向用户显示并将其设置为图像的源。

MyImage.Source = new BitmapImage(new Uri("C:\\Data\\Users\\Public\\Pictures\\Camera Roll\\WP_20140106_002.jpg", UriKind.Absolute));

如果您需要立即获取图像,可以从PhotoResult的ChosenPhoto属性中获取该图像。