InkCanvas也是一种画布,不过该画布可以在上面自动画画。实现将画好的图像保存起来:
string path = "C:\\Test.jpg";
FileStream fs = new FileStream(path, FileMode.Create); //文件流对象
//RenderTargetBitmap用来创建一副位图对象
RenderTargetBitmap rtb = new RenderTargetBitmap((int)ink.ActualWidth,
(int)ink.ActualHeight,1 / 100, 1 / 100, PixelFormats.Pbgra32);
rtb.Render(ink); //呈现位图对象
//BitmapEncoder用来保存BitmapFrame对象,并保存为指定的文件
//BitmapFrame是图像数据
BitmapEncoder be = new TiffBitmapEncoder(); //指定格式
be.Frames.Add(BitmapFrame.Create(rtb));
be.Save(fs);
fs.Close();