InkDisp Class
Collapse the table of content
Expand the table of content

InkDisp class

Represents the collected strokes of ink within an ink space.

InkDisp has these types of members:

Events

The InkDisp class has these events.

EventDescription
InkAdded

Occurs when a stroke is added to the InkDisp object.

InkDeleted

Occurs when a stroke is deleted from the InkDisp object.

 

Interfaces

The InkDisp class defines these interfaces.

InterfaceDescription
IInkDisp

This object implements the IInkDisp COM interface.

 

Methods

The InkDisp class has these methods.

MethodDescription
AddStrokesAtRectangle

Inserts a stroke collection into the InkDisp object at the specified rectangle.

CanPaste

Indicates whether the IDataObject can be converted to an InkDisp object.

Clip

Removes portions of a stroke or collection of strokes that are outside a rectangle.

ClipboardCopy

Copies the InkStrokes collection to the Clipboard.

ClipboardCopyWithRectangle

Copies the IInkStrokeDisp objects that are contained within the known rectangle to the Clipboard.

ClipboardPaste

Copies the IDataObject from the Clipboard to the InkDisp object.

Clone

Creates a duplicate InkDisp object.

CreateStroke

Creates a stroke from points or packet data.

CreateStrokes

Creates an InkStrokes collection for this InkDisp object.

DeleteStroke

Deletes a stroke from the InkDisp object.

DeleteStrokes

Deletes strokes from the InkDisp object.

ExtractStrokes Method

Extracts strokes from the InkDisp object and returns a new InkDisp object containing the extracted strokes.

ExtractWithRectangle Method

Cuts or copies strokes from an existing InkDisp Class object and pastes them into a new InkDisp Class object, by using the known rectangle to determine which strokes to extract.

GetBoundingBox

Retrieves the bounding box of all of the strokes in the InkDisp object.

HitTestCircle

Retrieves the InkStrokes collection that are either completely inside or intersected by a known circle.

HitTestWithLasso

Retrieves the strokes within a polyline selection area.

HitTestWithRectangle

Retrieves the strokes that are contained within a specified rectangle.

Load

Populates a new InkDisp object with known binary data.

NearestPoint

Retrieves the IInkStrokeDisp within the InkDisp object that is nearest to a known point, optionally providing additional information.

Save

Converts the ink to a specified format and returns the binary data.

 

Properties

The InkDisp class has these properties.

PropertyAccess typeDescription

CustomStrokes

Read-only

Gets the IInkCustomStrokes collection to be persisted with the ink.

Dirty

Read/write

Gets or sets the value that indicates whether an InkDisp object has been modified since the last time the ink was saved.

ExtendedProperties

Read-only

Gets the collection of application-defined data.

Strokes

Read-only

Gets the InkStrokes collection contained in the InkDisp object.

 

Remarks

This object can be instantiated by calling the CoCreateInstance method in C++.

Note  The first instantiation of this object causes GDI+ to be instantiated as well. A side-effect is that if you are using a single ink object in a loop and create and destroy it within the loop, you will cause GDI+ to be instantiated over and over. This can cause a performance degradation in your application. To prevent this, keep a single instance of an ink object at all times while your application is using ink.

An InkDisp object is a container of stroke (point) data. The stroke data, or the points collected by the pen, are put into an InkDisp object. The Strokes property contains the data for all strokes within the InkDisp object.

The InkCollector object, InkOverlay object, and InkPicture control collects points from the input device and puts them into an InkDisp object. These objects essentially act as the source that distributes ink into one or many different InkDisp objects, which act as containers that hold the distributed ink.

The ink space is a virtual coordinate space to which the coordinates of the tablet context are mapped. This space is fixed to a HIMETRIC coordinate system. In ink space coordinates, a move from 0 to 1 equals 1 HIMETRIC unit. This mapping makes it easy to relate multiple InkDisp objects.

The InkRenderer object manages the mappings between ink and the display window.

Requirements

Minimum supported client

Windows XP Tablet PC Edition [desktop apps only]

Minimum supported server

None supported

Header

Msinkaut.h (also requires Msinkaut_i.c)

Library

InkObj.dll

See also

IInkStrokeDisp Interface
InkStrokes Collection
IInkTablet Interface

 

 

Community Additions

ADD
Show:
© 2016 Microsoft