GetTextExtentExPoint

The GetTextExtentExPoint function retrieves the number of characters in a specified string that will fit within a specified space and fills an array with the text extent for each of those characters. (A text extent is the distance between the beginning of the space and a character that will fit in the space.) This information is useful for word-wrapping calculations.

BOOL GetTextExtentExPoint(
  HDC hdc,         // handle to device context
  LPCTSTR lpszStr, // pointer to character string
  int cchString,   // number of characters in string
  int nMaxExtent,  // maximum width for formatted string
  LPINT lpnFit,    // pointer to value specifying max. number of 
                   // chars.
  LPINT alpDx,     // pointer to array for partial string widths
  LPSIZE lpSize    // pointer to structure with string dimensions
);
 

Parameters

hdc
Handle to the device context.
lpszStr
Pointer to the null-terminated string for which extents are to be retrieved.
cchString
Specifies the number of bytes in the string pointed to by the lpszStr parameter.
nMaxExtent
Specifies the maximum allowable width, in logical units, of the formatted string.
lpnFit
Pointer to an integer to receive a count of the maximum number of characters that will fit in the space specified by the nMaxExtent parameter. When the lpnFit parameter is NULL, the nMaxExtent parameter is ignored.
alpDx
Pointer to an array of integers to receive partial string extents. Each element in the array gives the distance, in logical units, between the beginning of the string and one of the characters that fits in the space specified by the nMaxExtent parameter. Although this array should have at least as many elements as characters specified by the cchString parameter, the function fills the array with extents only for as many characters as are given by the lpnFit parameter. If alpDx is NULL, the function does not compute partial string widths.
lpSize
Pointer to a SIZE structure that contains the dimensions of the string, in logical units when the function returns. This value cannot be NULL.

Return Values

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero.

Windows NT: To get extended error information, call GetLastError.

Remarks

If both the lpnFit and alpDx parameters are NULL, calling the GetTextExtentExPoint function is equivalent to calling the GetTextExtentPoint function.

Windows CE: The cchString parameter specifies the number of characters, not bytes, in the string pointed to by the lpszStr parameter. This is true in Windows desktop platforms as well as in Windows CE.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Requires version 1.0 or later.
  Header: Declared in wingdi.h.
  Import Library: Use gdi32.lib.
  Unicode: Implemented as Unicode and ANSI versions on Windows NT.

See Also

Fonts and Text Overview, Font and Text Functions, GetTextExtentPoint, SIZE