tk_getpixelsfromobj(3)
NAME
Tk_GetPixelsFromObj, Tk_GetPixels, Tk_GetMMFromObj,
Tk_GetScreenMM - translate between strings and screen
units
SYNOPSIS
#include <tk.h> int Tk_GetPixelsFromObj(interp, tkwin, objPtr, intPtr) int Tk_GetPixels(interp, tkwin, string, intPtr) int Tk_GetMMFromObj(interp, tkwin, objPtr, doublePtr) int Tk_GetScreenMM(interp, tkwin, string, doublePtr)
ARGUMENTS
- Tcl_Interp *interp (in) Interpreter to use for
- error reporting.
- Tk_Window tkwin (in) Window whose screen
- geometry determines the
conversion between abso
lute units and pixels. - Tcl_Obj *objPtr (in/out)
- String value specifies a
distance on the screen;
internal rep will be
modified to cache con
verted distance. - CONST
char *string (in) - Same as objPtr except
specification of dis
tance 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 dis
tance on the screen (objPtr or string) and compute the
corresponding distance either in integer pixels or float
ing-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:
<none> The number specifies a distance in pixels.
- c The number specifies a distance in centimeters on
- the screen.
- i The number specifies a distance in inches on the
- screen.
- m The number specifies a distance in millimeters on
- the screen.
- p The number specifies a distance in printer's points
- (1/72 inch) on the screen.
- Tk_GetPixelsFromObj converts the value of objPtr to the
nearest even number of pixels and stores that value at
*intPtr. It returns TCL_OK 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
TCL_ERROR is returned and an error message is left in interp's result if interp isn't NULL. Tk_GetPixelsFromObj caches information about the return value in objPtr, which speeds up future calls to Tk_GetPixelsFromObj with the same objPtr. - Tk_GetPixels is identical to Tk_GetPixelsFromObj except
that the screen distance is specified with a string
instead of an object. This prevents Tk_GetPixels from caching the return value, so Tk_GetAnchor is less effi cient than Tk_GetPixelsFromObj. - Tk_GetMMFromObj and Tk_GetScreenMM are similar to Tk_Get
PixelsFromObj and Tk_GetPixels (respectively) except that
they convert the screen distance to millimeters and store
a double-precision floating-point result at *doublePtr.
KEYWORDS
- centimeters, convert, inches, millimeters, pixels, points,
screen units