Мне нужно сохранить мой FrameworkElement как очень большое растровое изображение. Сейчас я использую RenderTargetBitmap класс и BitmapEncoder, таким образом:Как сохранить FrameworkElement как очень большое растровое изображение?
RenderTargetBitmap bmp = new RenderTargetBitmap(ElementWidth, ElementHeight,
90, 96, PixelFormats.Default);
bmp.Render(MyElement); // OutOfMemoryException here
PngBitmapEncoder encoder = new PngBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(bmp));
using (var stream = File.Create(filePath))
{ encoder.Save(stream); }
Где ElementWidth и ElementHeight большое число (около 10000x6000). Но с этим решением есть исключение OutOfMemoryException, когда я пытаюсь выполнить Render мой элемент.
Есть ли другие способы делать то, что мне нужно (не вызывая исключения OutOfMemoryException)? Спасибо.