Content by Annasoft Systems (original archived HERE).
Pen Services for Windows 95
With Microsoft® Pen
Computing on Windows® 3.1 (also available from
Annasoft), Microsoft introduced pen functionality for the
Windows operating system. Pen Services for Windows®
95 is an OEM product that is packaged and sold with a
variety of pen computers and pen hardware. Pen Services
for Windows 95 builds on the base provided by the original
Microsoft Windows for Pen Computing to furnish great
support for the pen in Windows 95-based applications. Read
on for a brief description of the pen system and some of
the many new pen features and enhancements that are
provided for Windows 95.
Pen technology enables the design of reduced-form-factor
computer systems that do not utilize a keyboard, and
enables the creation of applications for which handwriting
input is a requirement or a significant user interface
enhancement. At present, most pen-based computers are used
for vertical or specialized applications; Microsoft is
committed to providing needed functionality for vertical
market solutions, for manufacturers of pen hardware, and
for customers whose business systems rely on pen
technology. Pen support is also an element of the Windows
95 mobile computing strategy, to the extent that some
portable PCs rely on the pen as their primary input
device.
Architecture
The design of Pen Services was driven by the following goals:
- to provide a compact yet powerful implementation covering all aspects of
specialized pen hardware;
- to support the "pen and paper" metaphor fully;
- to provide support across different machine configurations;
- to provide an open system that encourages developers of third-party add-ons
and enhancements;
- to enable existing Windows-based applications to benefit from pens.
Figure 1. Pen Services Architecture
Pen Services for Windows 95 are provided in two
components. Every copy of Windows 95 will include an ink
library (PKPD.DLL and PKPD32.DLL) that
handles all ink display and manipulation. This means that
ink collected by an application running on a machine with
a pen can be freely shared with any computer running
Windows 95. Windows 95 will also support ink as a standard
clipboard data type.
Windows 95-based computers with tablets, or with a pen as
the primary pointing device, will be delivered with the
complete pen system, including recognition services and
real-time inking services. Existing users of Windows for
Pen Computing can easily upgrade to Pen Services for
Windows 95 with a setup disk available from the
manufacturer of their pen hardware.
Pen Services incorporates the following core modules:
- Pen Module consists of two components: the Pen
Input Manager and the Default Pen Input Handler. The Pen
Input Manager is the heart of Pen Services for Windows
95. It is the architectural component which orchestrates
pen input handling, and contains all the necessary logic
required to handle a complete inking transaction and
return the result to the window that initiated it. The
Default Pen Input Handler allows the pen to be used with
existing Windows (and MS-DOS®) based
applications by acting as an interface between these
applications and Pen Services. Most Pen input is treated
as mouse input (a downward motion that depresses the pen
point is treated as a mouse click, and so forth) and is
passed to the application's mouse buffer for
pre-processing. When the user moves the pen into a text
entry box, Pen Services recognizes that the user is now
over a writing area: the cursor shape changes to a pen
shape and pen input is sent to the handwriting
recognition engine for processing, and then to the
application's keyboard buffer.
- Pen drivers are standard Windows device drivers
which provide the ability to capture pen events. The pen
hardware works together with electronics in the PC to
encode (x,y) locations and other information. Unlike the
original Windows for Pen Computing, Windows 95 uses
standard Windows video drivers to handle ink display.
- Recognizer DLL handles all recognition logic. A
recognizer collects ink from the device driver and
interprets that ink as characters in one or more
alphabets. Handwriting recognizers are completely
separate and replaceable. Multiple recognizers may be
attached and managed by the RC manager. Beyond the
requirements for collecting ink and returning results,
there are no constraints placed on how recognizers work.
The recognizer interface is open and published, and
third-party recognizers are widely available.
Compatibility
As in Windows for Pen Computing, Pen Services for Windows
95 provides pen capabilities to all existing applications.
When it detects the presence of Pen Services, Windows 95
enables recognition anywhere that an application can
accept text. This functionality is enabled through the
"Enable writing in all programs" option under the
"General" tab in the Control Panel pen applet. Pens
Services for Windows 95 also enables the writing tool
button and action handles for all edit controls. With Pen
Services for Windows 95, it is possible to use
Windows-based applications with only a pen-even if no
keyboard is available. Developers can build on this base
to offer additional features, such as annotation, to their
applications.
User Interface Enhancements
|
Figure 2. Tap on an icon to see a context
menu with common operations
|
Much of the user interface for pens introduced in Windows
3.1 has been improved for Windows 95.
New Tools
One of the greatest strengths of a pen is its ability to
point and tap. Therefore, pointing and tapping is the
primary way of getting things done in Pen Services for
Windows 95. Action handles (see Figure 2), now provided in
edit controls, provide a point-and-tap way to accomplish
most actions with a pen.
|
Figure 3. "Boxed Edit" handwriting control within the Edit
Text dialog box
|
The "boxed edit" control (see Figure 3), which provides
writing guides for handwriting recognition, has been updated
to support new correction mechanisms (see page 5). It also
action handles for selecting and performing actions on text.
The Boxed Edit Control also now allows applications to
constrain recognition in powerful ways, providing highly
accurate recognition results.
|
Figure 4. New "writing tool" keyboard, including word
completion
|
The "writing tool" (see Figure 4) is also new for Windows
95. Tapping the "writing tool" button (automatically
provided for any edit box) brings up a comfortably sized
writing area or an on-screen keyboard, both with correction
tools. The on-screen keyboard has a new layout and new
features such as word completion, in addition to providing a
familiar interface for entering characters. The keyboard is
accessible from both the "writing tool" button and as a
stand-alone application, enabling the use of the pen to
control MS-DOS-based programs.
Gestures
Pen Services for Windows 95 makes much better use of
gestures. Gestures are handwritten symbols that are
recognized as actions rather than as text. Like keyboard
shortcuts for menu commands, gestures make great
accelerators. However, just as an application that only
provided keyboard shortcuts without menus would be very
difficult to learn and use, a system that relied only on
gestures would be similarly difficult, especially since
gestures can be mis-recognized. For this reason, all
commands that are available as gestures are also available
either as buttons in the "writing tool" button or as
commands on an action handle menu. Just as many users can
use Windows without ever using a keyboard shortcut for a
menu command, so too can pen users be productive without
ever having to learn a gesture.
To make gestures easier to remember, all of the gestures
have been made into circled letters, giving them strong
mnemonic qualities. For example, you can copy text with a
"(c)" or undo an action with a circled "U".
Recognition
Recognition, one of the most visible and important
features provided by Pen Services, has been substantially
improved since the first release. Error rates have been
cut dramatically, largely through better use of contextual
clues. The recognition engine now supports the use of
"word lists," which give the recognizer a list of likely
words. Of course, because real writing is rarely limited
to a particular set of words, the recognizer will not
hesitate to ignore the word list if the written word does
not appear to match anything in the list.
Better Error Correction
|
Figure 5. Picking an alternate recognition choice is as
simple as tapping on the letter
|
Recognition is, however, and always will be, an imperfect
science. As much as the error rate has been decreased, there
will always be mistakes. After all, how many of us can read
our colleagues' handwriting (never mind our own after a few
days)? For this reason, Microsoft has offered new features
to make error correction as quick and simple as possible:
- Simply tap on a mis-recognized character or word to
pick from a list of alternatives.
- Use the new "writing tool" button to redraw a
character on top of the mis-recognized one.
- With action handles, reliably select text, insert
spaces, delete characters, and choose other common
editing commands.
New in Windows 95 is support for Passive Training. As the
user corrects recognition errors, the system learns where it
makes errors and adjusts its recognition system
accordingly-and automatically. The recognition gets better
as the system is used.
CIC provides the most advanced recognition with HRS.
Development Tools
Developers will notice greatly enhanced support for Pen
Services. The API has been updated to be more object
oriented, and the APIs are provided in both 16 bit and 32
bit forms.
The inking model has been improved to offer applications
far more control over the inking process (for example, to
implement a highlighter tool) and better performance. A
new Ink Edit control provides powerful ink-editing
capabilities to applications. The application developer
can simply place one of these controls on a form and the
control handles the rest. Users can draw, erase, move
strokes around, and adjust color and thickness of
individual strokes of ink.
Because most pen functionality is provided to applications
automatically (or encapsulated in controls), applications
developers can implement as little or as much pen
functionality as they want. The updated Windows 95 User
Interface Design Guide offers the most up-to-date
references on implementing Pen support.
Pen Driver Information
For both Pen Services and Pen Extensions, the key to pen
input is the pen driver that is the interface from the
tablet/digitizer to the pen manager. Both Pen Services and
Pen Extensions come with sample drivers.
Tablets Supported:
- Pen Services:
- Wacom SD-510C
- Wacom HD-648A
- Wacom UD-0608-R
- Compaq Concerto
The pen development kits include source code so that OEMs
can modify the driver for their particular tablet. Ask
your tablet manufacturer if they have a pen driver
available or contact LCS/Telegraphics
for pen drivers or pen driver development.
Pen Extensions 1.0a for Windows 3.1x
Microsoft Windows for Pen Computing, also know as Pen
Extensions, is an original equipment manufacturer (OEM)
product that is shipped with new pen computers. With
Windows for Pens, users can use the pen with existing
applications for the Windows operating system and
development tools to:
- Point and click as they would with a mouse
- Issue commands using gestures
- Write in documents
With Pen Extensions handwriting (printing) can be
captured and then translated to appear as typed text.
This capability allows for new devices to be created
that free the user of a keyboard. Pen computers are
ideal for situation for those jobs that force one to
roam the office or plant.
Pen Extensions is a series of modular extensions to MS
Windows 3.1 operating environment. The Pen Extensions
include a set of DLLs and drivers that enable pen-based
input and handwriting recognition in Microsoft Windows.
The components of the Pen Extensions are transparent to
normal Windows 3.1 applications, and yet they are
readily available for those applications that seek to
leverage their capabilities.
Pen services are available through a new set of APIs,
referred to in the following pages as the Pen API. This
API is available to every computer running version 3.1
of MS Windows-regards of whether or not that computer is
a pen computer or has an attached pen peripheral.
Applications developers can therefore leverage the Pen
API window classes as well as use other pen API
services, and fell confident that their programs will
run identically on all machines running MS Windows 3.1.
If the pen is present, the Pen API informs applications
so they can activate advanced pen-specific features. It
also automatically enables pen interaction in the pen
control classes. If the pen is not present, the same
.EXE will operate without modification under Windows
3.1.
Pen Extensions can be broken down into four components.
First are the Pen and Display drivers which hand the
tablet input and the inking output. Next, is the
recognizer that transforms the tablet/ink input to
recognizable ANSI characters. CIC's
HRS for Windows 3.1 replaces the basic Pen
Extensions driver with a more advanced recognition engine
for better performance. Third component is the PENWIN.DLL
that handles all the API calls. Finally, there are pen
interface programs that assist with pen interaction. These
features are:
- Trainer
- Gesture Editor
- On-Screen Keyboard
- Writing Window
- Control Panel Item - screen orientation, calibration,
and tablet selection
The pen development kits include source code so that OEMs
can modify the driver for their particular tablet. Ask
your tablet manufacturer if they have a pen driver
available or contact LCS/Telegraphics
for pen drivers or pen driver development.
Annasoft offers a complete line of Pen software from
Microsoft and CIC for MS-DOS, Windows 3.1x, Windows 95,
and Windows CE.
|