У меня InkPresenter, привязанный к коллекции StrokeCollection в модели MVVM, которую я использую для панели подписи. Прежде чем отправить данные обратно на сервер, я хочу преобразовать StrokeCollection в данные PNG, вот что у меня есть (я использую библиотеку ImageTools):
// Signature is a StrokesCollection
var bounds = Signature.GetBounds();
var inkSignature = new InkPresenter {Height = bounds.Height, Width = bounds.Width, Strokes = Signature};
var wbBitmap = new WriteableBitmap(inkSignature, null);
var myImage = wbBitmap.ToImage();
byte[] by = null;
MemoryStream stream = null;
using (stream = new MemoryStream())
{
PngEncoder png = new PngEncoder();
png.Encode(myImage, stream);
}
Поток всегда просто заполнен нулями, я чувствую, что мне не хватает чего-то действительно простого, о чем я даже не думал. Есть идеи?