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.         |

       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.
_________________________________________________________________

       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