310 likes | 582 Views
Windows Vista Tablet PC:. Shawn.VanNess@microsoft.com Jamie.Wakeam@microsoft.com PRS315 Program Managers Microsoft Corporation. Tablet PC In The Windows Vista Era. Exciting new Tablet PC features Handwriting recognition Shell and usability enhancements
E N D
Windows Vista Tablet PC: Shawn.VanNess@microsoft.comJamie.Wakeam@microsoft.comPRS315Program ManagersMicrosoft Corporation
Tablet PC In The Windows Vista Era • Exciting new Tablet PC features • Handwriting recognition • Shell and usability enhancements • Major investments in the Mobile PC space • Developing Power Aware Applications • Synchronization Manager • Auxiliary display technology • Support for touch-screen devices
Tablet PC In The Windows Vista Era • What’s new for developers?Two new API sets! • Ink in WPF – Second generation Ink collection and rendering platform • Ink Analysis – Second generation handwriting recognition platform • Not actually Windows Vista features • Both APIs will be available down-level(XP SP2 and later)
Fujitsu T4000 Toshiba R15/M4 Gateway Acer ThinkPad X41T Motion Motion HP TC4200 Tablet PC TodayLots of great hardware!
Digital Ink In WindowsPresentation Foundation • Tablet PC platform features are first-class citizens in Windows Presentation Foundation (WPF) • Digital ink collection, rendering, and editing • Stylus input events on all elements • Stroke object model • Partial trust support • StickyNote annotations • …much more!
Digital Ink In WPF • Tablet PC platform features are first-class citizens in WPF. This means… • No separate SDK to build against • No separate runtime to redist • Add ink to your desktop apps – why not? • Anyone with a mouse can play along…
Strange Bedfellows? • Many points of synergy between Tablet apps and WPF • DPI-independence and vector graphics, supporting a wide range of display devicesand aspect ratios • Flowed layout features help maximize screen real estate in portrait/landscape/widescreen • 3D or no 3D? “Tier” the user experience to match hardware capabilities • Tablet PC users demand out-of-the-ordinary user interface design
The <InkCanvas> Element • Centerpiece of Tablet PC support in WPF • Collects ink over any child element(s) • Provides a superset of functionality provided by the InkCollector, InkOverlay, and InkPicture components in the traditional Tablet SDK • Inherits the layout characteristics of<Canvas> element
InkCanvas Editing Modes • All the modes you know and love… • Ink, EraseByStroke, EraseByPoint, Select • Plus, selection mode extended to support direct manipulation of any child element on the InkCanvas! • Allows development of a mixed text/inknote taking experience similar to Journalor OneNote • EditingModeInverted • Built-in support for “top-of-pen-erase” feature
Build Your Own Stylus Input • <InkPresenter> Decorator • Provides static rendering of ink strokes • DynamicRenderer • Provides dynamic (real-time) ink rendering • UIElement.StylusXxxx events • Provide hooks to collect ink strokes into your object model StylusInRange StylusOutOfRange StylusEnterStylusInAirMoveStylusLeaveStylusDownStylusMoveStylusUpStylusButtonDownStylusButtonUp
Deeper Integration • MIL stands for “Media Integration Layer” • Collect ink over live video!
Deeper Integration • MIL stands for “Media Integration Layer” • Collect ink over live video! • UIElement.InputScope • Apply bias for handwriting recognition on any input element – TIP picks it up!
What Is InkAnalysis? • Windows Vista generation handwriting recognition API • Combines Recognition Context and InkDivider APIs • Architecture supports WPF, Windows Forms and COM Windows Form Application COM Application WPF Application Microsoft.Ink.Analysis.dll IACOM.dll IAWinFX.dll IACore.dll IALoader.dll reco.dll
InkAnalysis Functionality • Recognition for 10 languages • Writing/Drawing Classification • Writing Region, Line and Word/Character segmentation • Handwritten Outlines • Basic Shapes • Ink-on-Ink Annotations • Ink-on-Text Annotations
InkAnalysis Functionality • Easier to use • Multiple AnalysisHints (guides, wordlists,input scopes, etc) in a single inking area • Multi-language recognition in one call • Persists all results, including correctionsor partial results • More in a minute…
How To Call InkAnalysis • Similar usage to RecognitionContext API • Supports both synchronous analysisand asynchronous analysis operations System.Windows.Ink.InkAnalyzer myIA = new InkAnalyzer(this.Dispatcher); myIA.AddStrokes(myInkCanvas.Strokes); myIA.Analyze(); string myResults = myIA.GetRecognizedString(); System.Windows.Ink.InkAnalyzer myIA = new InkAnalyzer(this.Dispatcher); myIA.AddStrokes(myInkCanvas.Strokes); myIA.BackgroundAnalyze(); ... void myInkAnalyzer_Results(object sender, ResultsEventArgs e) { string myResults = myIA.GetRecognizedString(); }
How InkAnalysis Works Private InkAnalyzer Background Thread Application • Prune only what is needed • Clone to background thread • Reconcile changes UI Thread InkAnalyzer Add Stroke t1 IA updated Remove Stroke IA updated BackgroundAnalyze t2 Prune and Clone Return IA background operation t3 LayoutAnalysis Add Stroke t4 IA updated Remove Stroke Recognition t5 IA updated Sync updates Results t6 Reconcile Results Event t7
InkAnalysis Functionality • Rich events • Integrate results into existing document models • Integrate previous results back into the InkAnalyzer • Dynamically prune in ink and document content • Integrate representations of non-ink objects into the InkAnalyzer • Support for Ink-on-Text Annotations • 2D spatial representation of non-ink content
How You Can Get Started • Visit the Mobile PC Developer Center • http://msdn.microsoft.com/mobility/ • Download the Mobile PC andTablet PC September 2005 Beta SDK • Visit the Windows Vista Developer Center • http://msdn.microsoft.com/windowsvista/
Other Cool Talks • Mobile PC related • Developing Power Aware Applications (FUN319) • Synchronization Manager (DAT317) • Auxiliary display technology (PRS308) • Support for touch-screen devices • WinFX related • Content and Reading (PRS330) • Performance and Tiering (PRS327)
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
ISV Ecosystem • 15% of professional developers have active projects that include Tablet PCs • 300,000 developers working with Tablet PC APIs • 700+ registered ISV partners (300% increase since last year) http://www.tabletpcpartners.com • 300+ applications enabled for Tablet PCavailable today • http://www.tabletpcpost.com • http://www.microsoft.com/windowsxp/tabletpc/partners/software.mspx • Tablet Partner Showcase getting 10,000 hits/day!!!
ISV Momentum • Consumer space • Drawing, photo editing, note-taking • Artrage, Alias, Corel Painter, Concept7 • Education • Leaders are adopting • Tegrity, Agilix, DyKnow, OneNote • Corporate and line of business applications • Tablet PC applications in >40% of Fortune 500 • 80,000 corporate developers using Tablet PC SDK • Forms processing and note taking are key! • Mi-Co, Design Universe, ActiveInk • Tablet PCs validated in enterprise solutions • SAP CRM 4.0 is ink-enabled • Siebel 7.7 supports running on Tablet PC
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.