Overview of the Tablet PC Platform Tablet PC Platform Group Microsoft Corporation.

Slides:



Advertisements
Similar presentations
.NET 3.5 SP1 New features Enhancements Visual Studio 2008 SP1 New features Enhancements Additional features/enhancements.
Advertisements

Introduction to Tablet PC Development Gaurav Khanna Developer Evangelist Microsoft India.
The GIMP Simple features tutorial By Mary A White.
Touch Interface For Tablet PCs Reed Townsend Program Manager Tablet PC Platform Microsoft Corporation.
Microsoft Excel 2003 Illustrated Complete Excel Files and Incorporating Web Information Sharing.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
1 of 6 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
1 of 4 To calibrate your digital pen click the Start ( ) button>Control Panel>Mobile PC>Calibrate the screen. On the General tab, tap Calibrate, and then.
Creating Note Taking Solutions Software Design Engineer/Test Lead Challenges in.
1 of 6 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
Matt Masson| Senior Program Manager
Scelta della tecnologia di presentazione dei dati.
1 of 6 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
1 of 3 Using digital ink, the Microsoft® Tablet PC offers the full power and functionality of a notebook PC with the added benefits of pen-based computing.
Tablet PC Platform Advanced Topics Software Design Engineer/Test Lead
1 Windows Vista Tablet PC: PRS315 Program.
Winter Consolidated Server Deployment Guide for Hosted Messaging and Collaboration version 3.5 Philippe Maurent Principal Consultant Microsoft.
DEV389 Getting started with the Tablet PC SDK Name: Lester Madden Title: Developer Consultant.
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
Design Considerations & User Experience Guidelines for Mobile Tablet Applications Arnie Lund Director, User Experience David Hale Developer Experience.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
DEV317 Integrating Extensible Business Graphics into Enterprise Applications using Visio 2003 Mai-lan Tomsen Bukovec Program Manager.
DHTML. What is DHTML?  DHTML is the combination of several built-in browser features in fourth generation browsers that enable a web page to be more.
Java Beans.
BUILDING RICH MEDIA ELEMENTS. Design Decisions Based on Design Specification  Following the design specification will ensure that the application is.
CLI324 Tablet PC Platform Advanced Topics Software Design Engineer/Test Lead
Using the Actions Pane, Host Controls, and Smart Tags
NiagaraAX Framework Version 3.8 Feature Overview
University of Sunderland CDM105 Session 5 Web Authoring Tools The past and present A history of web authoring tools and an overview of Macromedia Dreamweaver.
Gallagher & Robertson New look for toolbar  ‘flat’ look with raised button as mouse passes over  note new handle for dragging the toolbar.
AJAX and Atlas in ASP.NET 2.0 William J. Steele MSDN Developer Evangelist Microsoft Corporation
02 | Install and Configure Team Foundation Server Anthony Borton | ALM Consultant, Enhance ALM Steven Borg | Co-founder & Strategist, Northwest Cadence.
1 of 2 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
Tutorial 1 Introducing Adobe Flash CS3 Professional
Code for touch, get mouse and pen for free Pointer API captures pen motion, passing coordinates to Ink API Ink API helps render and stores motion.
Solutions using Microsoft Content Management Server 2002 Connector for SharePoint Technologies Sue Corke Mark Harrison Microsoft UK.
MSG331 Exchange Server 2000/2003 Software Development Kit Susan Hill Lead Programmer Writer Microsoft Corporation.
 2002 Prentice Hall. All rights reserved. 1 Chapter 2 – Introduction to the Visual Studio.NET IDE Outline 2.1Introduction 2.2Visual Studio.NET Integrated.
Building a Handwriting recognition application with WPF
Microsoft Visual Studio 2005 Tools for the Office System: Building Office Solutions Using Visual Studio 2005 Tools for Office Andrew Coates Developer Evangelist.
Microsoft Office System UK Developers Conference Radisson Edwardian, Heathrow 29 th & 30 th June 2005.
Active Matrix LCD Panel ProMax® Interactive LCD Writing Panel Active Matrix LCD Panel ProMax® Interactive LCD Writing Panel.
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
Windows Vista Configuration MCTS : Internet Explorer 7.0.
Microsoft FrontPage 2003 Illustrated Complete Creating a Web Site.
Introducing Macromedia Flash 8
Office 365 Development July 2014.
Building Enterprise Applications Using Visual Studio®
DHTML.
Introducing the Windows Mobile development
OVERVIEW Objectives Follow a design document to prepare images for inclusion in a Web page Run a batch process to prepare multiple images in one step Use.
Office 365 Development July 2014.
Flash Interface, Commands and Functions
Chapter 2 – Introduction to the Visual Studio .NET IDE
Tablet PC Programming: Basics
Visio Services 2013 Collaboration APIs Chris Hopkins
Building a great Metro style device app for your printer
Building beautiful and interactive apps with HTML5 & CSS3
Office Power Hour New developer APIs and features for Apps for Office
Ambir nSign Presentation Synopsis
.NET and .NET Core 7. XAML Pan Wuming 2017.
Chapter 2 – Introduction to the Visual Studio .NET IDE
Office 365 Development.
Microsoft Office System UK Developers Conference
Enterprise Developer Camp Jumpstart
UI Issues, Neural Nets, RTS
Windows Forms in Visual Studio 2005: An in-depth look at key features
SharePoint 2007 Developer Overview Collaboration BI Features
9/8/ :03 PM © 2006 Microsoft Corporation. All rights reserved.
Presentation transcript:

Overview of the Tablet PC Platform Tablet PC Platform Group Microsoft Corporation

Agenda Tablet PC Platform Overview Description of the Object Model Platform Controls and Components New features in the 1.7 platform Development Overview Deployment Overview

The Tablet PC Platform Overview Ink Collection (Input) Ink Data and Management Ink Recognition

The Tablet PC Platform History V1.0/1.1 API:Ink Collection Ink Data Ink Reco Controls:InkEdit InkPicture SDK:Docs Samples Components:n/a V1.5 Same As V1 Updated Docs Updated Samples PenInputPanelInkDividerV1.7 Same As V1 StylusInput APIs Web Support Same As V1 Web Support Updated Docs Updated Samples Same As 1.5

Ink Collection (Input) Digitizer Basics  Very High Resolution and Throughput  Packet Properties  X, Y  Pressure, Angle, Rotation, etc … Using the API to collect Ink  InkCollector  InkOverlay  RealTimeStylus (new in Lonestar)

Ink Collection (Input)-Notes Digitizer Basics  Very High Resolution  Very High Throughput  Packet Properties  X, Y  Pressure, Angle, Rotation, etc … Using the API to collect ink  InkCollector  InkOverlay  RealTimeStylus (new in Lonestar)

Ink Data and Management Ink is a data type Multiple persistence formats Ink looks good  Vector-based  Bezier-smoothed  Anti-aliased  Customizable drawing attributes Rich, extensible API Copy to / paste from the Clipboard

Ink Recognition Interpret pen movements and/or strokes as:  Text (handwriting)  Gestures  Shapes and symbols Current language support Additional language support with Lonestar Synchronous and asynchronous recognition Data structure of reco result and alternates Extensibility architecture

Ink Recognition - Notes Interpret pen movements and/or strokes as:  Text (handwriting)  Gestures  Shapes and symbols Current language support Additional language support with Lonestar Synchronous and asynchronous recognition Data structure of reco result and alternates Extensibility architecture

Tablet PC Platform SDK Two APIs  Automation (COM) API  Dual-interfaced  IDispatch-based callbacks for events  Managed (.NET) API  Thin layer over the COM API Ink controls  InkEdit  InkPicture Documentation and Samples

Object Model Overview InkCollector InkOverlay Ink Strokes Renderer Tablet Stroke Recognizers Recognizer DrawingAttributes RecognizerContext

Focus on Key Objects Ink Collection  InkCollector  InkOverlay  Ink collection events Ink Data Management  Ink  Strokes  Stroke  DrawingAttributes  Renderer  Ink data management events Ink Recognition  RecognizerContext  RecognitionResult

Ink Collection Objects

InkCollector Object Top-level object for collecting ink Attaches to any HWND Handles input from all attached tablets (digitizers) and cursors Intercepts cursor movements CollectionMode property  InkOnly  GestureOnly  InkAndGesture

InkOverlay Object Superset of InkCollector EditingMode property  Ink  Delete  Select EraserMode property  StrokeErase  PointErase

Ink Collection Events CursorInRange/CursorOutOfRangeNewInAirPacketsCursorDownNewPacketsStrokeGesture SystemGesture events Mouse events

Ink Collection

Ink Data Objects

Ink Object Container for:  Stroke data  Metadata  Contextual awareness info Controls all means of persistence Extensible via ExtendedProperties property

Stroke Object Represents a single stroke  Single pen down, pen move, pen up sequence ExtendedProperties – allows applications to access and store custom data DrawingAttributes – controls the rendering of the stroke Rich API  PacketSize, PacketCount, PacketDescription  BezierPoints, PolylineCusps, SelfIntersections

Strokes Collection Collection of references to Stroke objects Implements ICollection, IEnumerable Group related strokes together  For filtering – by metadata  For recognition – by setting the RecognizerContext.Strokes property

DrawingAttributes Object Controls the appearance of ink  Color, width, transparency  Smoothing, anti-aliasing  Height, width  PenTip: Ball or Rectangle DefaultDrawingAttributes property Can be applied to  Stroke  Strokes collection  Cursor (Pen)

Renderer Object Two coordinate systems on a Tablet PC  Device coordinates  Ink coordinates (HIMETRIC) Renderer object  Maps between coordinate systems  Draw methods for rendering  Manipulation methods  Object and View transforms supported  Helper methods: Scale, Move, Rotate

Ink Data Events InkAdded fires when:  A Stroke object is added to an Ink object  Erasing in StrokeErase mode InkDeleted fires when:  A Stroke object is deleted from an Ink object  Erasing in StrokeErase mode

Clipboard Support Use the Ink API to copy and paste  ClipboardCopy  ClipboardPaste Multiple formats supported  ISF – Ink Serialized Format  HTML  Bitmap, Metafile Applications interacting with the Clipboard can choose the format

Ink Data Manipulation

Ink Recognition Objects

RecognizerContext Object Is the instantiation of a given recognizer Allows recognition of a collection of Strokes  Synchronous (foreground) recognition  Asynchronous (background) recognition  Raises events  Recognition  RecognitionWithAlternates Provides access to the recognizer result and alternates

RecognitionResult Object Recognizers contain a set of structures  Each structure called a “lattice”  Copied to RecognitionResult and others TopString property Store on the Strokes collection and add to Ink.CustomStrokes  SetResultOnStrokes method RecognitionAlternates object  GetAlternatesFromSelection method  Access to alternate paths through the lattice

Ink Recognition

Platform Controls and Components

Platform Controls InkEdit  Manipulate ink as text  Intended for text and ink-to-text scenarios  Enables smart forms  Superclass of the RichEdit control  Win32,.NET, ActiveX versions InkPicture  Ink-annotate images (.jpg,.bmp,.png,.gif)  Collect and save ink as ink  Subclass of PictureBox, akin to InkOverlay .NET and ActiveX versions only

Platform Components PenInputPanel  Programmatic access to the PIP (v 1.5)  Binds to any hWnd or Control  Basic control of the TIP (Lonestar)  Enable / Disable, etc.  Needed for backward compatibility Divider (InkDivider)  Divides Ink into words, lines, paragraphs and drawings  Transforms angled ink

Platform Components-Notes PenInputPanel  Programmatic access to the PIP (v 1.5)  Binds to any hWnd or Control  Basic control of the TIP (Lonestar)  Enable / Disable, etc.  Needed for backward compatibility Divider (InkDivider)  Divides Ink into words, lines, paragraphs and drawings  Transforms angled ink

Ink Division and the Divider Component

New Features in the 1.7 Platform

Tablet PC Input Panel Replaces TIP and PIP No longer docked to top/bottom of screen Character Pad panel OS “just knows” when to show the TIP or a TIP icon Grows as user writes On-the-fly recognition and pre-insertion error correction Context support

Tablet PC Input Panel-Notes Replaces TIP and PIP No longer docked to top/bottom of screen Character Pad panel OS “just knows” when to show the TIP or a TIP icon Grows as user writes, if needed On-the-fly recognition and pre-insertion error correction Context support

Context What is context?  App-specific info you provide to help the recognizer  Constrains recognition rules/possibilities  Greatly improves recognition accuracy Examples of context information  Factoids: recoContext.Factoid = “(!IS_DATE)”;  Word and phrase lists  Custom input scopes with regular expressions Context-enabled applications in Lonestar  Internet Explorer (Address Bar)  Outlook 2003 (To:, Cc:, Bcc:)

Context Features in Lonestar

Context for Non-Ink-Enabled Controls SetInputScope API (new WIN32 API)  Low-level programmatic solution  Binaries impacted  White paper available for.NET development Context Tagging Tool  Non-programmatic  Binaries not impacted  Persists input scope / field relationships with XML manifest

Context Tagging Tool

Web Support Support for Partially Trusted callers  Host ink-enabled Windows Forms controls on Web pages  Ink on a Web page  Send ink to the Web server  Retrieve ink from the Web server No-touch deploy Tablet PC applications  Application examples  Inventory management  Expense reporting  Claims handling

Hosting Ink Controls Create the Windows Forms control  Ink-enable with InkOverlay object  Use InkEdit or InkPicture controls Deploy the control library to the Web server Create the Web page  tag to hold the control  Script functions to invoke the control’s exposed members More info: ASP.NET QuickStart Tutorial  “Using Windows Forms Controls in Internet Explorer”

Ink in a Web Application

StylusInput APIs Direct access to digitizer data stream  Manipulate packet data in real time  Separate Real Time Collection and UI threads  Better performance than InkOverlay, InkEdit, etc. Build custom components  Real Time Ink components  Custom dynamic rendering (e.g., hardware acclerated)  Custom gesture recognition  Disabled regions (WindowInputRectangle property)  Ink Collection components  Custom InkOverlay or InkCollector components

RealTimeStylus Plugins

Other Improvements Manipulation of ink  Create stroke with full packet description HTTP User-Agent  Now identifies Tablet PC OS and SDK version Enhanced SDK Documentation  Lots of new content, samples, etc…

Development Environment Install on non-tablet devices  SDK on Win2K SP3 and above  WinXP Tablet PC Edition OS on non-tablet hardware  Microsoft Virtual PC  Available on MSDN  MSDN: SDK  MSDN Subscriber Downloads: OS Simulate tablet digitizer  External HID digitizer  Mouse (UseMouseForInput property)

Deploying your Tablet Application Redistributable merge modules Considerations  Recognition  Ink collection w/o a digitizer  PIP and TIP  No support for the Win9X platforms

© 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.