Converting Data to Display Resolution
Converting the points in an
HPENDATA block to display resolution effectively compresses the data because display
coordinates are coarser than tablet coordinates and therefore occupy less
memory. However, the conversion is irreversible; an application cannot convert the
points back to their original tablet resolution. Moreover, converting to display
coordinates virtually disallows subsequent recognition of the data because
recognizers lose accuracy when dealing with data at coarse screen coordinates.
To compress pen data to screen resolution
- Call MetricScalePenData to convert the ink data from tablet coordinates to display coordinates.
- Call TrimPenData with the TPD_COLLINEAR flag to remove the duplicate and collinear points.
These two steps substantially reduce the number of points in the pen data by
removing many high-resolution digitizer points. The following code fragment
demonstrates these steps:
HPENDATA hpendata; // Handle to HPENDATA object
.
.
.
if (MetricScalePenData( hpendata, PDTS_DISPLAY ))
iRet = TrimPenData( hpendata, TPD_COLLINEAR );
After converting the
HPENDATA block to display resolution, the application can call
CompressPenData or
TrimPenData to compress the points even more. For maximum compression of data intended
only for display, use the following instructions instead of the preceding example:
if (MetricScalePenData( hpendata, PDTS_DISPLAY ))
if (TrimPenData( hpendata, TPD_EVERYTHING ) == PDR_OK)
CompressPenData( hpendata, CMPD_COMPRESS );
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database