UMPC and Tablet PC Development

Posted on 20 March 2006, Last updated on 08 January 2015 by

[img]https://www.umpcportal.com/origami/images/tabletkioskcoding.jpg[/img]

I’ll be honest, I haven’t had much experience with tablet PC development. So after getting hyped up about this whole Origami ultra mobile PC thing I decided I should probably download the Tablet PC SDK and look at how programming for it is different than development using a regular mouse interface.

So I started going through the sample code (For my purposes I focused on C# at first) and have learned a couple things about Tablet programming that I hadn’t known before.

[b]1: There is a Power Management SDK. [/b] Now call me naive, but for some reason this hadn’t even occurred to me in a mobile Windows device. I have programmed code on mobile gaming devices and obviously there are things you can do to make sure your game doesn’t continually suck battery life by not having it constantly load things and managing certain types of memory and that all seemed like a no brainier. However in all of my programming for Windows systems I didn’t once think about creating applications that wouldn’t eat up memory on a Notebook computer.
I constantly use intensive applications on my notebook with it unplugged and I have thought before, “Man I wish my battery didn’t go so fast.” So, this only makes sense.

Read more below…[b]2: The concept of Ink.[/b] This is totally new to me as well. I have seen people use tablet PCs where they jot little notes and circle things and write things on screen and have it change to text, but have never really thought about how it works.
The Microsoft SDK uses something referred to as Ink to display what is created by the input pen. The object that runs this input and displays it is the InkCollector which has multiple properties for Color, Width and other inky type things.
According to the help the Ink if placed on a document works independently from the text and is saved on top of the text. This means that the Ink will not be moved with the text changes by default, however there are functions built in so it can be manipulated if the application supports it.

[b]3: Handwriting support.[/b] I have briefly used a Window tablet PC before and have been amazed at how well it picks up what I’m writing even in cursive. The Tablet PC SDK comes with some demo programs that include handwriting recognition support and sadly since I was using a Windows XP desktop I could not test this functionality. I did look at the code however and was amazed at how small it was. for some reason I assumed it would be big and filled with system calls and once again, I was blown away at the simplicity of how it used it in code.
The application creates a Recognizers object that selects the correct Recognizer and according to the InkRecognition.cs code the InkCollector just has to call the ToString function and it just converts the ink strokes to a String.
There were more in depth samples for handwriting recognition, however, they were written in C++ and I wanted to just keep with C# for right now. So this likely becomes more complex but so far I don’t have much exposure to it.

[b]4: Social Context guidelines.[/b] Not really a feature, but some good info that I hadn’t thought about. the help file has a section about planing your application for release on the tablet and one of the items is making it show visual indicators instead of sounds for actions due to the fact that most people use tablet PCs in a meeting and work environment.
That’s just good advice.

[b]5: Tablet Web Pages.[/b] Sample code is also included for developing tablet ready web interfaces. Sadly, I run Apache and not IIS on my local machine, so I wasn’t able to view any of the applications, but creating a specific web interface for Tablet and UMPCs is a pretty interesting idea that I hope gets more explored in the future.

So thats basically how my first experience was with the SDK sample code and the documentation. Consider this a first step in me starting development on some type of app for the UMPC. I will be updating more info as I actually start coding something and get more familiar with the SDK.

In the meantime, if you want to download the tablet SDK it is [url=http://msdn.microsoft.com/mobility/tabletpc/]here[/url]

Also a couple of the active members on the [url=https://www.umpcportal.com/modules/newbb/viewforum.php?forum=3]Development Forums[/url] are software programmers so come chat about any tablet PC information here or lend your advice.

Comments are closed.

Find ultra mobile PCs, Ultrabooks, Netbooks and handhelds PCs quickly using the following links:

Acer C740
11.6" Intel Celeron 3205U
Acer Aspire Switch 10
10.1" Intel Atom Z3745
HP Elitebook 820 G2
12.5" Intel Core i5 5300U
Acer Aspire E11 ES1
11.6" Intel Celeron N2840
Acer C720 Chromebook
11.6" Intel Celeron 2955U
ASUS Zenbook UX305
13.3" Intel Core M 5Y10a
Dell Latitude E7440
14" Intel Core i5-4200U
Lenovo Thinkpad X220
12.5" Intel Core i5
Acer Chromebook 11 CB3-131
11.6" Intel Celeron N2807
Lenovo Ideapad Flex 10
10.1" Intel Celeron N2806