2015-03-02 46 views
1

我正在创建WPF应用程序,因为我的摄像头部分正在使用内置的地铁相机应用程序。由于此应用程序是一个桌面应用程序,我只想使用Metro Camera应用程序来捕获图像和编辑。捕获图像后,它保存在This PC - > Pictures文件夹中,但我想将图像保存在其他文件夹中,同时我也想手动为图像命名。有没有办法做到这一点?如何为C#wpf应用程序定制windows 8.1相机应用程序

+0

更新的答案是否适合您? – aliboy38 2015-03-02 13:13:22

+0

[this](http://stackoverflow.com/questions/16858376/download-and-save-image-in-pictures-library-through-windows-8-metro-xaml-app)不工作... – Ranjith 2015-03-02 13:36:29

+0

它应该工作。你可能在某处做错了什么。尝试再次查看并阅读其他链接。 – aliboy38 2015-03-02 16:22:51

回答

1

这里是保存图像的代码:

void SaveToBmp(FrameworkElement visual, string fileName) 
{ 
    var encoder = new BmpBitmapEncoder(); 
    SaveUsingEncoder(visual, fileName, encoder); 
} 

void SaveToPng(FrameworkElement visual, string fileName) 
{ 
    var encoder = new PngBitmapEncoder(); 
    SaveUsingEncoder(visual, fileName, encoder); 
} 

// and so on for other encoders (if you want) 


void SaveUsingEncoder(FrameworkElement visual, string fileName, BitmapEncoder encoder) 
{ 
    RenderTargetBitmap bitmap = new RenderTargetBitmap((int)visual.ActualWidth, (int)visual.ActualHeight, 96, 96, PixelFormats.Pbgra32); 
    bitmap.Render(visual); 
    BitmapFrame frame = BitmapFrame.Create(bitmap); 
    encoder.Frames.Add(frame); 

    using (var stream = File.Create(fileName)) 
    { 
     encoder.Save(stream); 
    } 
} 

Here是针对源。

更新:

如果你想保存在metro app图像,你可以使用Pictures Library了点。

阅读这些以下问题:

Download and Save image in Pictures Library through Windows 8 Metro XAML App

How save photo capture windows 8 c# metro app?

希望它能帮助。

+0

请看我更新的问题。 – Ranjith 2015-03-02 07:21:00

+0

@Ranjith我已经回答了这个问题。您只需要获取图像,然后您就可以轻松使用代码保存图像。 – aliboy38 2015-03-02 07:28:49

+0

实际上我正在使用内置的地铁应用程序,它是一个独立的程序,我如何根据我的要求更改保存图像的路径? – Ranjith 2015-03-02 07:42:35

相关问题