I remember seeing WPF/E, the early version of what was to become Silverlight, at Microsoft a few years ago, then running over to the building where the TabletPC team lives and asking if the WPF inking features were going to be in Silverlight. As you may or may not know by now, the answer was yes and it is the InkPresenter control in Silverlight that enables drawing in Silverlight apps. I had been doing a lot of work with Ink on the Web and was frustrated by the limitations and challenges of dealing with ActiveX. Putting the capabilities into Silverlight not only mean very easy deployment, but it removed the restriction for TabletPC O/S or even a Windows O/S, as well as a dependence on Internet Explorer.
I have presented this technology at various conferences - generally to a small audience. I am always surprised that more people aren't interested in it. Are we really just Tablet PC Freaks?
Even the Silverlight books don't devote very much time to the InkPresenter.
Well a few more people are going to be exposed to this now because this months MSDN Magazine (August 2008) has an article about using the InkPresenter that I wrote. (The issue features a bunch of Silverlight articles and an Astoria article too!) The article not only shows how to get the InkPresenter to do it's inky thing, but also how to take advantage of web services to persist and retrieve drawings as well as to do hand writing recognition. The latter, as I discovered when I put my sample up on my web site, requires that the service be hosted on a computer that has the Recognition Engines installed. If you have a TabletPC or Windows Vista, they are already there. Otherwise, you need to install them on the host. Unfortunately, my own web site is on a shared server, so installing the reco engines is not an option.
I've also learned that even though the reco is in Vista, and the Speech Engines made it into Windows 2008 Server, the hand writing reco engines did not.
The article (and the sample) uses Silverlight 2.0, LINQ to SQL, LINQ to XML and WCF Services so it was fun to use so many new technologies. I originally did the work in Silverlight 1.0 with Javascript so it can be done, just a little harder. I guess the next step would be to replace the LINQ to SQL and WCF with Astoria but that's for another day.
You can get the engines here: MS Windows XP Tablet PC Editions 2005 Recognizer Pack.
The article: Write On! Create Web Apps You Can Draw On with Silverlight 2
The sample application for Silverlight 2.0 (without the recognition until I move the WCF Service elsewhere) : http://www.thedatafarm.com/Silverlight/AnnotationMSDN/.
Unfortunately, drawing is not one of my skills, so some of the screenshots in the article are laughable, but hey, whadya want? :-)
(Oh and I'm not responsible for that very first sentence. But as Kathleen says: We Don't Publish Words, We Publish Ideas - Get Over It)
Have fun!!




