如何将捕获的图像保存在媒体库中

本文关键字:保存 存在 媒体库 图像 | 更新日期: 2023-09-27 18:30:34

我想将捕获的图像保存在媒体中。任何人都可以帮助我。:)

CameraCaptureTask myCamera = new CameraCaptureTask();
myCamera.Show();

这是我用来打开相机和捕获的代码

如何将捕获的图像保存在媒体库中

在 Page 中的构造函数之前声明您的CameraCaptureTask

CameraCaptureTask cameraCaptureTask;

在页面结构中,初始化 CameraCapture Task 并订阅 Completed 事件处理程序:

cameraCaptureTask = new CameraCaptureTask();
cameraCaptureTask.Completed += new EventHandler<PhotoResult>(cameraCaptureTask_Completed);

如果要启动任务(例如:在 Page 构造函数中或在按钮单击事件中),请调用 Show 方法:

cameraCaptureTask.Show();

将已完成的事件处理程序的代码添加到页面。此代码在用户完成任务后运行。结果是一个 PhotoResult 对象,该对象公开包含图像数据的流:

void cameraCaptureTask_Completed(object sender, PhotoResult e)
{
    if (e.TaskResult == TaskResult.OK)
    {
        MediaLibrary medialibrary = new MediaLibrary(); // Don't forget to the "using Microsoft.Xna.Framework.Media;" namespace
        medialibrary.SavePicture("ImageName", e.ChosenPhoto);
    }
}

使用 MediaLibrary 对象的 SavePictureToCameraRoll 方法

public async void Capture()
{
   await seq.StartCaptureAsync();
   // Set the stream position to the beginning.
   captureStream1.Seek(0, SeekOrigin.Begin);
   MediaLibrary library = new MediaLibrary();
   Picture picture1 = library.SavePictureToCameraRoll("image1", captureStream1);
}