Преобразование элемента XAML в изображение в silverlight?

У меня есть элемент холста XAML, и мне нужно сохранить элемент холста и все, что в нем, в любом формате изображения (JPEG,PNG) с высоким качеством. Как это сделать в Silverlight с помощью C#. Я видел код Fjcore, но я не понимаю, что это делает, пожалуйста, объясните с кодом и, пожалуйста, прокомментируйте, что он делает.

1 ответ

Решение

Вы можете попробовать Imagetools для библиотеки Silverlight в Codeplex. Вот пример сохранения элемента canvas в формате JPEG:

//Convert UIElement to Image
ei = ImageExtensions.ToImage(myCanvas);

//Save the image
SaveFileDialog saveDlg = new SaveFileDialog();
saveDlg.Filter = "JPEG Files (*.jpeg)|*.jpeg";
saveDlg.DefaultExt = ".jpeg";
if ((bool)saveDlg.ShowDialog())
{
    using (Stream fs = saveDlg.OpenFile())
    {
        ei.WriteToStream(fs);
    }
}

Дополнительную информацию о том, как ее использовать, можно найти по ссылке выше, и, как мне кажется, выглядело очень просто.

Другие вопросы по тегам