保存:
如果您希望在保存后能够操作笔画,那么您需要保存笔画。您可以使用StrokeCollection.Save方法来执行此操作。
var fs = new FileStream(inkFileName, FileMode.Create);
inkCanvas1.Strokes.Save(fs);
然后,您可以再次加载它并访问各个笔画。但是,一旦将其渲染出来(例如到位图),则渲染的文件只能作为位图加载,而不是单独的笔画。(当然,您可以两者都做并将笔画另存为单独的文件)。要保存为位图,您可以使用您发布到的链接中的代码。
正在加载
将位图加载到 Image 控件很简单,因为OpenFileDialog
它将返回图像路径。
if (myOpenFileDialog.ShowDialog() == DialogResult.OK)
{
myImageControl.Source = new BitmapImage(new Uri(myOpenFileDialog.FileName, UriKind.Absolute));
}
这将加载图像并将其显示在表单上的图像控件中。
编辑:我认为您不能将位图直接加载到 InkCanvas。但是,您可以改为加载笔画。
要再次加载笔画,您可以使用StrokeCollection(Stream)
var fs = new FileStream(inkFileName,
FileMode.Open, FileAccess.Read);
StrokeCollection strokes = new StrokeCollection(fs);
inkCanvas1.Strokes = strokes;
更多功能,可以阅读这篇CodeProject 文章。