Microsoft Foundation Classes (mfc.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
GetCharABCWidths
CDC                                         Up Contents Index Back
──Microsoft Foundation Classes──────────────────────────────────────────────
 
  Windows 3.1 only
 
  BOOL GetCharABCWidths( UINT nFirst, UINT nLast, LPABC lpabc ) const;
 
  Parameter   Description
 
  <nFirst>    Specifies the first character in the range of characters
              from the current font for which character widths are
              returned.
 
  <nLast>     Specifies the last character in the range of characters from
              the current font for which character widths are returned.
 
  <lpabc>     Points to an array of ABC structures that receive the
              character widths when the function returns. This array must
              contain at least as many ABC structures as there are
              characters in the range specified by the <nFirst> and
              <nLast> parameters.
 
  Remarks
 
  Retrieves the widths of consecutive characters in a specified range from
  the current TrueType font. The widths are returned in logical units.
  This function succeeds only with TrueType fonts.
 
  The TrueType rasterizer provides "ABC" character spacing after a
  specific point size has been selected. "A" spacing is the distance that
  is added to the current position before placing the glyph. "B" spacing
  is the width of the black part of the glyph. "C" spacing is added to the
  current position to account for the white space to the right of the
  glyph. The total advanced width is given by A + B + C.
 
  When the GetCharABCWidths member function retrieves negative "A" or "C"
  widths for a character, that character includes underhangs or
  overhangs.
 
  To convert the ABC widths to font design units, an application should
  create a font whose height (as specified in the lfHeight member of the
  LOGFONT structure) is equal to the value stored in the ntmSizeEM
  member of the NEWTEXTMETRIC structure. (The value of the ntmSizeEM
  member can be retrieved by calling the EnumFontFamilies Windows
  function.)
 
  The ABC widths of the default character are used for characters that are
  outside the range of the currently selected font.
 
  To retrieve the widths of characters in non-TrueType fonts, applications
  should use the GetCharWidth member function.
 
  Return Value
 
  Nonzero if the function is successful; otherwise, 0.
 
  See Also
 
  ::EnumFontFamilies, ::GetCharWidth, CDC::GetCharWidth,
  ::GetCharABCWidth
 
 
                                     -♦-