NAME
TkGetPixelsFromObj, TkGetPixels, TkGetMMFromObj, TkGetScreenMM -
translate between strings and screen unitsSYNOPSIS
##iinncclluuddee <
int | TTkkGGeettPPiixxeellssFFrroommOObbjj((interp, tkwin, objPtr, intPtr)) | int TTkkGGeettPPiixxeellss((interp, tkwin, string, intPtr)) int | TTkkGGeettMMMMFFrroommOObbjj((interp, tkwin, objPtr, doublePtr)) | int TTkkGGeettSSccrreeeennMMMM((interp, tkwin, string, doublePtr)) AARRGGUUMMEENNTTSS> TclInterp *interp (in) Interpreter to use for error report-
ing.TkWindow tkwin (in) Window whose screen geometry deter-
mines the conversion between absolute units and pixels. TclObj *objPtr (in/out) || String value specifies a distance on |the screen; internal rep will be mod- |
ified to cache converted distance. | CONST | char *string (in) | | Same as objPtr except specification | of distance is passed as a string. int *intPtr (out) Pointer to location in which to store converted distance in pixels. double *doublePtr (out) Pointer to location in which to store converted distance in millimeters.DESCRIPTION
These procedures take as argument a specification of distance on the | screen (objPtr or string) and compute the corresponding distance eitherin integer pixels or floating-point millimeters. In either case, |
objPtr or string specifies a screen distance as a floating-point number
followed by one of the following characters that indicates units:The number specifies a distance in pixels. cc The number specifies a distance in centimeters on the screen. ii The number specifies a distance in inches on the screen. mm The number specifies a distance in millimeters on the screen. pp The number specifies a distance in printer's points (1/72 inch) on the screen. TTkkGGeettPPiixxeellssFFrroommOObbjj converts the value of objPtr to the nearest even | number of pixels and stores that value at *intPtr. It returns TTCCLLOOKK | under normal circumstances. If an error occurs (e.g. objPtr contains a | number followed by a character that isn't one of the ones above) then | TTCCLLEERRRROORR is returned and an error message is left in interp's result | if interp isn't NULL. TTkkGGeettPPiixxeellssFFrroommOObbjj caches information about the | return value in objPtr, which speeds up future calls to TTkkGGeettPPiixxeellss- |
FFrroommOObbjj with the same objPtr. | TTkkGGeettPPiixxeellss is identical to TTkkGGeettPPiixxeellssFFrroommOObbjj except that the screen |distance is specified with a string instead of an object. This pre- |
vents TTkkGGeettPPiixxeellss from caching the return value, so TTkkGGeettAAnncchhoorr is | less efficient than TTkkGGeettPPiixxeellssFFrroommOObbjj. | TTkkGGeettMMMMFFrroommOObbjj and TTkkGGeettSSccrreeeennMMMM are similar to TTkkGGeettPPiixxeellssFFrroommOObbjj | and TTkkGGeettPPiixxeellss (respectively) except that they convert the screen |distance to millimeters and store a double-precision floating-point |
result at *doublePtr. KKEEYYWWOORRDDSS centimeters, convert, inches, millimeters, pixels, points, screen units Tk 8.1 TkGetPixelsFromObj(3)