在 Stefan Wick 的协助下,Julie Lerman 展示了将 Silverlight 中 InkPresenter 对象里的图片转换为 PNG 文件的方法。
InkPresenter 允许 Silverlight 应用程序使用由 Tablet PC 所引入的 Ink 技术。只要一支手写笔,或者一只鼠标,用户就可以在画布上绘制图片,且这并不需要程序员来跟踪或处理任何事件。简而言之,这就是个用户 控件一样的、内嵌在应用中的简易图像编辑器。
在 Silverlight 中使用 InkPresenter 的场景包括捕获签名、允许用户输入手写文本或绘画等。不过,将 InkPresenter 从一个私有的 Ink 格式转化为一幅诸如 PNG 格式的图片却需要一些技巧,且需要服务器端的帮助。
由于 Silverlight 在一定程度上存在着限制,Julie 选择了在服务器端进行转换。首先她将 Ink 图像转化为 XAML 代码,然后通过 Web Service 调用将其传递至服务器端。服务器端接收到数据后,即可将其转换为 WPF 的 InkObject 对象。最后在 Stefan Wick 的协助下,Julie 还提供了一段可以将 InkObject 转化为 PNG 文件的代码。
您可以在 Julie Lerman 的 blog 里找到该源代码。
查看英文原文: Julie Lerman on Converting Silverlight InkPresenter Images to PNG files
评论