Sophie

Sophie

distrib > Mandriva > current > i586 > media > main-updates > by-pkgid > f51238514e2abe817779ad2fe01b0759 > files > 117

icu-doc-4.4-2.1mdv2010.2.i586.rpm

<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>ICU 4.4: LEFontInstance Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.1 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <img id="MSearchSelect" src="search/search.png"
             onmouseover="return searchBox.OnSearchSelectShow()"
             onmouseout="return searchBox.OnSearchSelectHide()"
             alt=""/>
        <input type="text" id="MSearchField" value="Search" accesskey="S"
             onfocus="searchBox.OnSearchFieldFocus(true)" 
             onblur="searchBox.OnSearchFieldFocus(false)" 
             onkeyup="searchBox.OnSearchFieldChange(event)"/>
        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
        </div>
      </li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&nbsp;Structure&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>LEFontInstance Class Reference</h1><!-- doxytag: class="LEFontInstance" --><!-- doxytag: inherits="UObject" -->
<p>This is a virtual base class that serves as the interface between a <a class="el" href="classLayoutEngine.html" title="This is a virtual base class used to do complex text layout.">LayoutEngine</a> and the platform font environment.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="LEFontInstance_8h_source.html">LEFontInstance.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for LEFontInstance:</div>
<div class="dynsection">
 <div class="center">
  <img src="classLEFontInstance.gif" usemap="#LEFontInstance_map" alt=""/>
  <map id="LEFontInstance_map" name="LEFontInstance_map">
<area href="classUObject.html" alt="UObject" shape="rect" coords="0,56,99,80"/>
<area href="classUMemory.html" alt="UMemory" shape="rect" coords="0,0,99,24"/>
</map>
 </div>
</div>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#afff0147e7d59cd2d9e6c52b20e135dbe">~LEFontInstance</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This virtual destructor is here so that the subclass destructors can be invoked through the base class.  <a href="#afff0147e7d59cd2d9e6c52b20e135dbe"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classLEFontInstance.html">LEFontInstance</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#ada40c86fd1aa1e90dd2c1fadce30d96e">getSubFont</a> (const <a class="el" href="LETypes_8h.html#a903cb689308cdef41500411d096a2c2d">LEUnicode</a> chars[], <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> *offset, <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> limit, <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> script, <a class="el" href="LETypes_8h.html#a2f75d3bb5abf7f0a71adbf00826e1934">LEErrorCode</a> &amp;success) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a physical font which can render the given text.  <a href="#ada40c86fd1aa1e90dd2c1fadce30d96e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#aaf1da7510c05deebcab885b4f351db33">getFontTable</a> (<a class="el" href="LETypes_8h.html#a9e22a06bf2336b583b317287cb94fcfa">LETag</a> tableTag) const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method reads a table from the font.  <a href="#aaf1da7510c05deebcab885b4f351db33"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#aeda37f791b8772ea118055c5967a7c0d">canDisplay</a> (<a class="el" href="LETypes_8h.html#a25ed173b2a50d1ab11df41caf054fdb7">LEUnicode32</a> ch) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method is used to determine if the font can render the given character.  <a href="#aeda37f791b8772ea118055c5967a7c0d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a96ff76ba24e7b5e3a676a96522fd527e">getUnitsPerEM</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the number of design units in the font's EM square.  <a href="#a96ff76ba24e7b5e3a676a96522fd527e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a40ae46572b1230e460801cc4245f20d6">mapCharsToGlyphs</a> (const <a class="el" href="LETypes_8h.html#a903cb689308cdef41500411d096a2c2d">LEUnicode</a> chars[], <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> offset, <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> count, <a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a> reverse, const <a class="el" href="classLECharMapper.html">LECharMapper</a> *mapper, <a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a> filterZeroWidth, <a class="el" href="classLEGlyphStorage.html">LEGlyphStorage</a> &amp;glyphStorage) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method maps an array of character codes to an array of glyph indices, using the font's character to glyph map.  <a href="#a40ae46572b1230e460801cc4245f20d6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#aee1e7102bf00f45880155f827a721791">mapCharToGlyph</a> (<a class="el" href="LETypes_8h.html#a25ed173b2a50d1ab11df41caf054fdb7">LEUnicode32</a> ch, const <a class="el" href="classLECharMapper.html">LECharMapper</a> *mapper, <a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a> filterZeroWidth) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method maps a single character to a glyph index, using the font's character to glyph map.  <a href="#aee1e7102bf00f45880155f827a721791"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a1a6594afdd3acba869187f35dc6efab1">mapCharToGlyph</a> (<a class="el" href="LETypes_8h.html#a25ed173b2a50d1ab11df41caf054fdb7">LEUnicode32</a> ch, const <a class="el" href="classLECharMapper.html">LECharMapper</a> *mapper) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method maps a single character to a glyph index, using the font's character to glyph map.  <a href="#a1a6594afdd3acba869187f35dc6efab1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a8842d891e5b920c10634e2991f8707b1">mapCharToGlyph</a> (<a class="el" href="LETypes_8h.html#a25ed173b2a50d1ab11df41caf054fdb7">LEUnicode32</a> ch) const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method maps a single character to a glyph index, using the font's character to glyph map.  <a href="#a8842d891e5b920c10634e2991f8707b1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a853c929a59964763742a7e6f4ad04416">getGlyphAdvance</a> (<a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a> glyph, <a class="el" href="structLEPoint.html">LEPoint</a> &amp;advance) const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method gets the X and Y advance of a particular glyph, in pixels.  <a href="#a853c929a59964763742a7e6f4ad04416"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#adab675412aaabe611c06c3f662014149">getGlyphPoint</a> (<a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a> glyph, <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> pointNumber, <a class="el" href="structLEPoint.html">LEPoint</a> &amp;point) const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method gets the hinted X and Y pixel coordinates of a particular point in the outline of the given glyph.  <a href="#adab675412aaabe611c06c3f662014149"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a94d1438332f3085d74c7fb6ba352ddb2">getXPixelsPerEm</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the width of the font's EM square in pixels.  <a href="#a94d1438332f3085d74c7fb6ba352ddb2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a7adcf352e7e351a35a7117ada66cbaf6">getYPixelsPerEm</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the height of the font's EM square in pixels.  <a href="#a7adcf352e7e351a35a7117ada66cbaf6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#acd256413c31510a9bef99ede7952a866">xUnitsToPoints</a> (float xUnits) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method converts font design units in the X direction to points.  <a href="#acd256413c31510a9bef99ede7952a866"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a3c0b3e39ba6061842cf3b64f6d2cc8d6">yUnitsToPoints</a> (float yUnits) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method converts font design units in the Y direction to points.  <a href="#a3c0b3e39ba6061842cf3b64f6d2cc8d6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#ab1e0cf2c5875a4d4710e7239b2a59694">unitsToPoints</a> (<a class="el" href="structLEPoint.html">LEPoint</a> &amp;units, <a class="el" href="structLEPoint.html">LEPoint</a> &amp;points) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method converts font design units to points.  <a href="#ab1e0cf2c5875a4d4710e7239b2a59694"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#abac7ba687628b13aafa25c63ff8907f7">xPixelsToUnits</a> (float xPixels) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method converts pixels in the X direction to font design units.  <a href="#abac7ba687628b13aafa25c63ff8907f7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a21839c1d622f83399bd234f411a7ba67">yPixelsToUnits</a> (float yPixels) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method converts pixels in the Y direction to font design units.  <a href="#a21839c1d622f83399bd234f411a7ba67"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#ac6dae22148f9284965758ac8f89cfb51">pixelsToUnits</a> (<a class="el" href="structLEPoint.html">LEPoint</a> &amp;pixels, <a class="el" href="structLEPoint.html">LEPoint</a> &amp;units) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method converts pixels to font design units.  <a href="#ac6dae22148f9284965758ac8f89cfb51"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a9cd2bee109659061d03a1e3524aa00eb">getScaleFactorX</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the X scale factor from the font's transform.  <a href="#a9cd2bee109659061d03a1e3524aa00eb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a9ff93236e0520f32e7ab043bf069fba5">getScaleFactorY</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the Y scale factor from the font's transform.  <a href="#a9ff93236e0520f32e7ab043bf069fba5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#ae510517597d8178cd6ed40b2c99d0922">transformFunits</a> (float xFunits, float yFunits, <a class="el" href="structLEPoint.html">LEPoint</a> &amp;pixels) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method transforms an X, Y point in font design units to a pixel coordinate, applying the font's transform.  <a href="#ae510517597d8178cd6ed40b2c99d0922"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#ae998881f1c92d740d2508c34c5452d7e">getAscent</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the font's ascent.  <a href="#ae998881f1c92d740d2508c34c5452d7e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#aad3b9dbda9a15e478781aa033737da9e">getDescent</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the font's descent.  <a href="#aad3b9dbda9a15e478781aa033737da9e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#ad64ff3fc567404a2fb2bc79f2c254c00">getLeading</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the font's leading.  <a href="#ad64ff3fc567404a2fb2bc79f2c254c00"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a7a1d0706e2ae0711332366ef1ddd8b19">getLineHeight</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the line height required to display text in this font.  <a href="#a7a1d0706e2ae0711332366ef1ddd8b19"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#afab9ce47ba477ffaec2b20f5e160decb">getDynamicClassID</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ICU "poor man's RTTI", returns a UClassID for the actual class.  <a href="#afab9ce47ba477ffaec2b20f5e160decb"></a><br/></td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#ae6c01ddc73d5f9dec656bc2845fdfd4b">fixedToFloat</a> (<a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> fixed)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is a convenience method used to convert values in a 16.16 fixed point format to floating point.  <a href="#ae6c01ddc73d5f9dec656bc2845fdfd4b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a9102c10c6835d4007820f3e72ebf38cd">floatToFixed</a> (float theFloat)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is a convenience method used to convert floating point values to 16.16 fixed point format.  <a href="#a9102c10c6835d4007820f3e72ebf38cd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLEFontInstance.html#a1cfce60e1612095164b7e3d4920447b1">getStaticClassID</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ICU "poor man's RTTI", returns a UClassID for this class.  <a href="#a1cfce60e1612095164b7e3d4920447b1"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This is a virtual base class that serves as the interface between a <a class="el" href="classLayoutEngine.html" title="This is a virtual base class used to do complex text layout.">LayoutEngine</a> and the platform font environment. </p>
<p>It allows a <a class="el" href="classLayoutEngine.html" title="This is a virtual base class used to do complex text layout.">LayoutEngine</a> to access font tables, do character to glyph mapping, and obtain metrics information without knowing any platform specific details. There are also a few utility methods for converting between points, pixels and funits. (font design units)</p>
<p>An instance of an <code><a class="el" href="classLEFontInstance.html" title="This is a virtual base class that serves as the interface between a LayoutEngine...">LEFontInstance</a></code> represents a font at a particular point size. Each instance can represent either a single physical font, or a composite font. A composite font is a collection of physical fonts, each of which contains a subset of the characters contained in the composite font.</p>
<p>Note: with the exception of <code>getSubFont</code>, the methods in this class only make sense for a physical font. If you have an <code><a class="el" href="classLEFontInstance.html" title="This is a virtual base class that serves as the interface between a LayoutEngine...">LEFontInstance</a></code> which represents a composite font you should only call the methods below which have an <code>LEGlyphID</code>, an <code>LEUnicode</code> or an <code>LEUnicode32</code> as one of the arguments because these can be used to select a particular subfont.</p>
<p>Subclasses which implement composite fonts should supply an implementation of these methods with some default behavior such as returning constant values, or using the values from the first subfont.</p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004012">Stable:</a></b></dt><dd>ICU 3.0 </dd></dl>

<p>Definition at line <a class="el" href="LEFontInstance_8h_source.html#l00081">81</a> of file <a class="el" href="LEFontInstance_8h_source.html">LEFontInstance.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="afff0147e7d59cd2d9e6c52b20e135dbe"></a><!-- doxytag: member="LEFontInstance::~LEFontInstance" ref="afff0147e7d59cd2d9e6c52b20e135dbe" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual LEFontInstance::~LEFontInstance </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This virtual destructor is here so that the subclass destructors can be invoked through the base class. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004015">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="aeda37f791b8772ea118055c5967a7c0d"></a><!-- doxytag: member="LEFontInstance::canDisplay" ref="aeda37f791b8772ea118055c5967a7c0d" args="(LEUnicode32 ch) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a> LEFontInstance::canDisplay </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a25ed173b2a50d1ab11df41caf054fdb7">LEUnicode32</a>&nbsp;</td>
          <td class="paramname"> <em>ch</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method is used to determine if the font can render the given character. </p>
<p>This can usually be done by looking the character up in the font's character to glyph mapping.</p>
<p>The default implementation of this method will return <code>TRUE</code> if <code>mapCharToGlyph(ch)</code> returns a non-zero value.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>- the character to be tested</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>TRUE</code> if the font can render ch.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004018">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="ae6c01ddc73d5f9dec656bc2845fdfd4b"></a><!-- doxytag: member="LEFontInstance::fixedToFloat" ref="ae6c01ddc73d5f9dec656bc2845fdfd4b" args="(le_int32 fixed)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float LEFontInstance::fixedToFloat </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td>
          <td class="paramname"> <em>fixed</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This is a convenience method used to convert values in a 16.16 fixed point format to floating point. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>fixed</em>&nbsp;</td><td>- the fixed point value</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the floating point value</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004037">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

<p>Definition at line <a class="el" href="LEFontInstance_8h_source.html#l00514">514</a> of file <a class="el" href="LEFontInstance_8h_source.html">LEFontInstance.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9102c10c6835d4007820f3e72ebf38cd"></a><!-- doxytag: member="LEFontInstance::floatToFixed" ref="a9102c10c6835d4007820f3e72ebf38cd" args="(float theFloat)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> LEFontInstance::floatToFixed </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>theFloat</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This is a convenience method used to convert floating point values to 16.16 fixed point format. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theFloat</em>&nbsp;</td><td>- the floating point value</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the fixed point value</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004038">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

<p>Definition at line <a class="el" href="LEFontInstance_8h_source.html#l00519">519</a> of file <a class="el" href="LEFontInstance_8h_source.html">LEFontInstance.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae998881f1c92d740d2508c34c5452d7e"></a><!-- doxytag: member="LEFontInstance::getAscent" ref="ae998881f1c92d740d2508c34c5452d7e" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> LEFontInstance::getAscent </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the font's ascent. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the font's ascent, in points. This value will always be positive.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004039">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

<p>Referenced by <a class="el" href="ParagraphLayout_8h_source.html#l00700">ParagraphLayout::VisualRun::getAscent()</a>.</p>

</div>
</div>
<a class="anchor" id="aad3b9dbda9a15e478781aa033737da9e"></a><!-- doxytag: member="LEFontInstance::getDescent" ref="aad3b9dbda9a15e478781aa033737da9e" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> LEFontInstance::getDescent </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the font's descent. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the font's descent, in points. This value will always be positive.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004040">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

<p>Referenced by <a class="el" href="ParagraphLayout_8h_source.html#l00705">ParagraphLayout::VisualRun::getDescent()</a>.</p>

</div>
</div>
<a class="anchor" id="afab9ce47ba477ffaec2b20f5e160decb"></a><!-- doxytag: member="LEFontInstance::getDynamicClassID" ref="afab9ce47ba477ffaec2b20f5e160decb" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> LEFontInstance::getDynamicClassID </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>ICU "poor man's RTTI", returns a UClassID for the actual class. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004043">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

<p>Implements <a class="el" href="classUObject.html#a9b1acc95efd89cb86ec31f2dc947a262">UObject</a>.</p>

</div>
</div>
<a class="anchor" id="aaf1da7510c05deebcab885b4f351db33"></a><!-- doxytag: member="LEFontInstance::getFontTable" ref="aaf1da7510c05deebcab885b4f351db33" args="(LETag tableTag) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const void* LEFontInstance::getFontTable </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a9e22a06bf2336b583b317287cb94fcfa">LETag</a>&nbsp;</td>
          <td class="paramname"> <em>tableTag</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method reads a table from the font. </p>
<p>Note that in general, it only makes sense to call this method on an <code><a class="el" href="classLEFontInstance.html" title="This is a virtual base class that serves as the interface between a LayoutEngine...">LEFontInstance</a></code> which represents a physical font - i.e. one which has been returned by <code><a class="el" href="classLEFontInstance.html#ada40c86fd1aa1e90dd2c1fadce30d96e" title="Get a physical font which can render the given text.">getSubFont()</a></code>. This is because each subfont in a composite font will have different tables, and there's no way to know which subfont to access.</p>
<p>Subclasses which represent composite fonts should always return <code>NULL</code>.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>tableTag</em>&nbsp;</td><td>- the four byte table tag. (e.g. 'cmap')</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the address of the table in memory, or <code>NULL</code> if the table doesn't exist.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004017">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a853c929a59964763742a7e6f4ad04416"></a><!-- doxytag: member="LEFontInstance::getGlyphAdvance" ref="a853c929a59964763742a7e6f4ad04416" args="(LEGlyphID glyph, LEPoint &amp;advance) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void LEFontInstance::getGlyphAdvance </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a>&nbsp;</td>
          <td class="paramname"> <em>glyph</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structLEPoint.html">LEPoint</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>advance</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method gets the X and Y advance of a particular glyph, in pixels. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>glyph</em>&nbsp;</td><td>- the glyph index </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>advance</em>&nbsp;</td><td>- the X and Y pixel values will be stored here</td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004024">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="adab675412aaabe611c06c3f662014149"></a><!-- doxytag: member="LEFontInstance::getGlyphPoint" ref="adab675412aaabe611c06c3f662014149" args="(LEGlyphID glyph, le_int32 pointNumber, LEPoint &amp;point) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a> LEFontInstance::getGlyphPoint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a>&nbsp;</td>
          <td class="paramname"> <em>glyph</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td>
          <td class="paramname"> <em>pointNumber</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structLEPoint.html">LEPoint</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>point</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method gets the hinted X and Y pixel coordinates of a particular point in the outline of the given glyph. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>glyph</em>&nbsp;</td><td>- the glyph index </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pointNumber</em>&nbsp;</td><td>- the number of the point </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>point</em>&nbsp;</td><td>- the point's X and Y pixel values will be stored here</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>TRUE</code> if the point coordinates could be stored.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004025">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div>
<a class="anchor" id="ad64ff3fc567404a2fb2bc79f2c254c00"></a><!-- doxytag: member="LEFontInstance::getLeading" ref="ad64ff3fc567404a2fb2bc79f2c254c00" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> LEFontInstance::getLeading </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the font's leading. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the font's leading, in points. This value will always be positive.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004041">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

<p>Referenced by <a class="el" href="ParagraphLayout_8h_source.html#l00710">ParagraphLayout::VisualRun::getLeading()</a>.</p>

</div>
</div>
<a class="anchor" id="a7a1d0706e2ae0711332366ef1ddd8b19"></a><!-- doxytag: member="LEFontInstance::getLineHeight" ref="a7a1d0706e2ae0711332366ef1ddd8b19" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> LEFontInstance::getLineHeight </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the line height required to display text in this font. </p>
<p>The default implementation of this method returns the sum of the ascent, descent, and leading.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the line height, in points. This vaule will always be positive.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004042">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a9cd2bee109659061d03a1e3524aa00eb"></a><!-- doxytag: member="LEFontInstance::getScaleFactorX" ref="a9cd2bee109659061d03a1e3524aa00eb" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float LEFontInstance::getScaleFactorX </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the X scale factor from the font's transform. </p>
<p>The default implementation of <code><a class="el" href="classLEFontInstance.html#ae510517597d8178cd6ed40b2c99d0922" title="This method transforms an X, Y point in font design units to a pixel coordinate,...">transformFunits()</a></code> will call this method.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the X scale factor.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classLEFontInstance.html#ae510517597d8178cd6ed40b2c99d0922" title="This method transforms an X, Y point in font design units to a pixel coordinate,...">transformFunits</a></dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004034">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a9ff93236e0520f32e7ab043bf069fba5"></a><!-- doxytag: member="LEFontInstance::getScaleFactorY" ref="a9ff93236e0520f32e7ab043bf069fba5" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float LEFontInstance::getScaleFactorY </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the Y scale factor from the font's transform. </p>
<p>The default implementation of <code><a class="el" href="classLEFontInstance.html#ae510517597d8178cd6ed40b2c99d0922" title="This method transforms an X, Y point in font design units to a pixel coordinate,...">transformFunits()</a></code> will call this method.</p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the Yscale factor.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classLEFontInstance.html#ae510517597d8178cd6ed40b2c99d0922" title="This method transforms an X, Y point in font design units to a pixel coordinate,...">transformFunits</a></dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004035">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a1cfce60e1612095164b7e3d4920447b1"></a><!-- doxytag: member="LEFontInstance::getStaticClassID" ref="a1cfce60e1612095164b7e3d4920447b1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> LEFontInstance::getStaticClassID </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>ICU "poor man's RTTI", returns a UClassID for this class. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004044">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="ada40c86fd1aa1e90dd2c1fadce30d96e"></a><!-- doxytag: member="LEFontInstance::getSubFont" ref="ada40c86fd1aa1e90dd2c1fadce30d96e" args="(const LEUnicode chars[], le_int32 *offset, le_int32 limit, le_int32 script, LEErrorCode &amp;success) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classLEFontInstance.html">LEFontInstance</a>* LEFontInstance::getSubFont </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="LETypes_8h.html#a903cb689308cdef41500411d096a2c2d">LEUnicode</a>&nbsp;</td>
          <td class="paramname"> <em>chars</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> *&nbsp;</td>
          <td class="paramname"> <em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td>
          <td class="paramname"> <em>limit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td>
          <td class="paramname"> <em>script</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a2f75d3bb5abf7f0a71adbf00826e1934">LEErrorCode</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>success</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a physical font which can render the given text. </p>
<p>For composite fonts, if there is no single physical font which can render all of the text, return a physical font which can render an initial substring of the text, and set the <code>offset</code> parameter to the end of that substring.</p>
<p>Internally, the <a class="el" href="classLayoutEngine.html" title="This is a virtual base class used to do complex text layout.">LayoutEngine</a> works with runs of text all in the same font and script, so it is best to call this method with text which is in a single script, passing the script code in as a hint. If you don't know the script of the text, you can use zero, which is the script code for characters used in more than one script.</p>
<p>The default implementation of this method is intended for instances of <code><a class="el" href="classLEFontInstance.html" title="This is a virtual base class that serves as the interface between a LayoutEngine...">LEFontInstance</a></code> which represent a physical font. It returns <code>this</code> and indicates that the entire string can be rendered.</p>
<p>This method will return a valid <code><a class="el" href="classLEFontInstance.html" title="This is a virtual base class that serves as the interface between a LayoutEngine...">LEFontInstance</a></code> unless you have passed illegal parameters, or an internal error has been encountered. For composite fonts, it may return the warning <code>LE_NO_SUBFONT_WARNING</code> to indicate that the returned font may not be able to render all of the text. Whenever a valid font is returned, the <code>offset</code> parameter will be advanced by at least one.</p>
<p>Subclasses which implement composite fonts must override this method. Where it makes sense, they should use the script code as a hint to render characters from the COMMON script in the font which is used for the given script. For example, if the input text is a series of Arabic words separated by spaces, and the script code passed in is <code>arabScriptCode</code> you should return the font used for Arabic characters for all of the input text, including the spaces. If, on the other hand, the input text contains characters which cannot be rendered by the font used for Arabic characters, but which can be rendered by another font, you should return that font for those characters.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>chars</em>&nbsp;</td><td>- the array of Unicode characters. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>- a pointer to the starting offset in the text. On exit this will be set the the limit offset of the text which can be rendered using the returned font. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>limit</em>&nbsp;</td><td>- the limit offset for the input text. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>script</em>&nbsp;</td><td>- the script hint. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>success</em>&nbsp;</td><td>- set to an error code if the arguments are illegal, or no font can be returned for some reason. May also be set to <code>LE_NO_SUBFONT_WARNING</code> if the subfont which was returned cannot render all of the text.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>an <code><a class="el" href="classLEFontInstance.html" title="This is a virtual base class that serves as the interface between a LayoutEngine...">LEFontInstance</a></code> for the sub font which can render the characters, or <code>NULL</code> if there is an error.</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="LEScripts_8h.html" title="C++ API: Constants for Unicode script values.">LEScripts.h</a></dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004016">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a96ff76ba24e7b5e3a676a96522fd527e"></a><!-- doxytag: member="LEFontInstance::getUnitsPerEM" ref="a96ff76ba24e7b5e3a676a96522fd527e" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a> LEFontInstance::getUnitsPerEM </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method returns the number of design units in the font's EM square. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of design units pre EM.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004019">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a94d1438332f3085d74c7fb6ba352ddb2"></a><!-- doxytag: member="LEFontInstance::getXPixelsPerEm" ref="a94d1438332f3085d74c7fb6ba352ddb2" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float LEFontInstance::getXPixelsPerEm </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method returns the width of the font's EM square in pixels. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the pixel width of the EM square</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004026">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a7adcf352e7e351a35a7117ada66cbaf6"></a><!-- doxytag: member="LEFontInstance::getYPixelsPerEm" ref="a7adcf352e7e351a35a7117ada66cbaf6" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float LEFontInstance::getYPixelsPerEm </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method returns the height of the font's EM square in pixels. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the pixel height of the EM square</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004027">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a40ae46572b1230e460801cc4245f20d6"></a><!-- doxytag: member="LEFontInstance::mapCharsToGlyphs" ref="a40ae46572b1230e460801cc4245f20d6" args="(const LEUnicode chars[], le_int32 offset, le_int32 count, le_bool reverse, const LECharMapper *mapper, le_bool filterZeroWidth, LEGlyphStorage &amp;glyphStorage) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void LEFontInstance::mapCharsToGlyphs </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="LETypes_8h.html#a903cb689308cdef41500411d096a2c2d">LEUnicode</a>&nbsp;</td>
          <td class="paramname"> <em>chars</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td>
          <td class="paramname"> <em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a3ae79f31399d76e3055d2a2745bd0d9a">le_int32</a>&nbsp;</td>
          <td class="paramname"> <em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a>&nbsp;</td>
          <td class="paramname"> <em>reverse</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classLECharMapper.html">LECharMapper</a> *&nbsp;</td>
          <td class="paramname"> <em>mapper</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a>&nbsp;</td>
          <td class="paramname"> <em>filterZeroWidth</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classLEGlyphStorage.html">LEGlyphStorage</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>glyphStorage</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method maps an array of character codes to an array of glyph indices, using the font's character to glyph map. </p>
<p>The default implementation iterates over all of the characters and calls <code>mapCharToGlyph(ch, mapper)</code> on each one. It also handles surrogate characters, storing the glyph ID for the high surrogate, and a deleted glyph (0xFFFF) for the low surrogate.</p>
<p>Most sublcasses will not need to implement this method.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>chars</em>&nbsp;</td><td>- the character array </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>- the index of the first character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>count</em>&nbsp;</td><td>- the number of characters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>reverse</em>&nbsp;</td><td>- if <code>TRUE</code>, store the glyph indices in reverse order. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mapper</em>&nbsp;</td><td>- the character mapper. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>filterZeroWidth</em>&nbsp;</td><td>- <code>TRUE</code> if ZWJ / ZWNJ characters should map to a glyph w/ no contours. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>glyphStorage</em>&nbsp;</td><td>- the object which contains the output glyph array</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classLECharMapper.html" title="Instances of this class are used by LEFontInstance::mapCharsToGlyphs and LEFontInstance::mapCharToGl...">LECharMapper</a></dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004020">Stable:</a></b></dt><dd>ICU 3.6 </dd></dl>

</div>
</div>
<a class="anchor" id="a8842d891e5b920c10634e2991f8707b1"></a><!-- doxytag: member="LEFontInstance::mapCharToGlyph" ref="a8842d891e5b920c10634e2991f8707b1" args="(LEUnicode32 ch) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a> LEFontInstance::mapCharToGlyph </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a25ed173b2a50d1ab11df41caf054fdb7">LEUnicode32</a>&nbsp;</td>
          <td class="paramname"> <em>ch</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method maps a single character to a glyph index, using the font's character to glyph map. </p>
<p>There is no default implementation of this method because it requires information about the platform font implementation.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>- the character</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the glyph index</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004023">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a1a6594afdd3acba869187f35dc6efab1"></a><!-- doxytag: member="LEFontInstance::mapCharToGlyph" ref="a1a6594afdd3acba869187f35dc6efab1" args="(LEUnicode32 ch, const LECharMapper *mapper) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a> LEFontInstance::mapCharToGlyph </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a25ed173b2a50d1ab11df41caf054fdb7">LEUnicode32</a>&nbsp;</td>
          <td class="paramname"> <em>ch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classLECharMapper.html">LECharMapper</a> *&nbsp;</td>
          <td class="paramname"> <em>mapper</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method maps a single character to a glyph index, using the font's character to glyph map. </p>
<p>The default implementation of this method calls the mapper, and then calls <code>mapCharToGlyph(mappedCh)</code>.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>- the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mapper</em>&nbsp;</td><td>- the character mapper</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the glyph index</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classLECharMapper.html" title="Instances of this class are used by LEFontInstance::mapCharsToGlyphs and LEFontInstance::mapCharToGl...">LECharMapper</a></dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004022">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="aee1e7102bf00f45880155f827a721791"></a><!-- doxytag: member="LEFontInstance::mapCharToGlyph" ref="aee1e7102bf00f45880155f827a721791" args="(LEUnicode32 ch, const LECharMapper *mapper, le_bool filterZeroWidth) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="LETypes_8h.html#ae440e077586bced1a0d1c534643ffc23">LEGlyphID</a> LEFontInstance::mapCharToGlyph </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a25ed173b2a50d1ab11df41caf054fdb7">LEUnicode32</a>&nbsp;</td>
          <td class="paramname"> <em>ch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classLECharMapper.html">LECharMapper</a> *&nbsp;</td>
          <td class="paramname"> <em>mapper</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="LETypes_8h.html#a4b77bc254d0e88fdabffde9c03e6728f">le_bool</a>&nbsp;</td>
          <td class="paramname"> <em>filterZeroWidth</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method maps a single character to a glyph index, using the font's character to glyph map. </p>
<p>The default implementation of this method calls the mapper, and then calls <code>mapCharToGlyph(mappedCh)</code>.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>ch</em>&nbsp;</td><td>- the character </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mapper</em>&nbsp;</td><td>- the character mapper </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>filterZeroWidth</em>&nbsp;</td><td>- <code>TRUE</code> if ZWJ / ZWNJ characters should map to a glyph w/ no contours.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the glyph index</dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classLECharMapper.html" title="Instances of this class are used by LEFontInstance::mapCharsToGlyphs and LEFontInstance::mapCharToGl...">LECharMapper</a></dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004021">Stable:</a></b></dt><dd>ICU 3.6 </dd></dl>

</div>
</div>
<a class="anchor" id="ac6dae22148f9284965758ac8f89cfb51"></a><!-- doxytag: member="LEFontInstance::pixelsToUnits" ref="ac6dae22148f9284965758ac8f89cfb51" args="(LEPoint &amp;pixels, LEPoint &amp;units) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void LEFontInstance::pixelsToUnits </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structLEPoint.html">LEPoint</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pixels</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structLEPoint.html">LEPoint</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>units</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method converts pixels to font design units. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pixels</em>&nbsp;</td><td>- X and Y pixel </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>units</em>&nbsp;</td><td>- set to X and Y font design units</td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004033">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="ae510517597d8178cd6ed40b2c99d0922"></a><!-- doxytag: member="LEFontInstance::transformFunits" ref="ae510517597d8178cd6ed40b2c99d0922" args="(float xFunits, float yFunits, LEPoint &amp;pixels) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void LEFontInstance::transformFunits </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>xFunits</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>yFunits</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structLEPoint.html">LEPoint</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pixels</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method transforms an X, Y point in font design units to a pixel coordinate, applying the font's transform. </p>
<p>The default implementation of this method calls <code><a class="el" href="classLEFontInstance.html#a9cd2bee109659061d03a1e3524aa00eb" title="Get the X scale factor from the font&#39;s transform.">getScaleFactorX()</a></code> and <code><a class="el" href="classLEFontInstance.html#a9ff93236e0520f32e7ab043bf069fba5" title="Get the Y scale factor from the font&#39;s transform.">getScaleFactorY()</a></code>.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>xFunits</em>&nbsp;</td><td>- the X coordinate in font design units </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>yFunits</em>&nbsp;</td><td>- the Y coordinate in font design units </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pixels</em>&nbsp;</td><td>- the tranformed co-ordinate in pixels</td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classLEFontInstance.html#a9cd2bee109659061d03a1e3524aa00eb" title="Get the X scale factor from the font&#39;s transform.">getScaleFactorX</a> </dd>
<dd>
<a class="el" href="classLEFontInstance.html#a9ff93236e0520f32e7ab043bf069fba5" title="Get the Y scale factor from the font&#39;s transform.">getScaleFactorY</a></dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004036">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="ab1e0cf2c5875a4d4710e7239b2a59694"></a><!-- doxytag: member="LEFontInstance::unitsToPoints" ref="ab1e0cf2c5875a4d4710e7239b2a59694" args="(LEPoint &amp;units, LEPoint &amp;points) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void LEFontInstance::unitsToPoints </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structLEPoint.html">LEPoint</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>units</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structLEPoint.html">LEPoint</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>points</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method converts font design units to points. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>units</em>&nbsp;</td><td>- X and Y design units </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>points</em>&nbsp;</td><td>- set to X and Y points</td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004030">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="abac7ba687628b13aafa25c63ff8907f7"></a><!-- doxytag: member="LEFontInstance::xPixelsToUnits" ref="abac7ba687628b13aafa25c63ff8907f7" args="(float xPixels) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float LEFontInstance::xPixelsToUnits </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>xPixels</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method converts pixels in the X direction to font design units. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>xPixels</em>&nbsp;</td><td>- pixels in the X direction</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>font design units in the X direction</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004031">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="acd256413c31510a9bef99ede7952a866"></a><!-- doxytag: member="LEFontInstance::xUnitsToPoints" ref="acd256413c31510a9bef99ede7952a866" args="(float xUnits) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float LEFontInstance::xUnitsToPoints </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>xUnits</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method converts font design units in the X direction to points. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>xUnits</em>&nbsp;</td><td>- design units in the X direction</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>points in the X direction</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004028">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a21839c1d622f83399bd234f411a7ba67"></a><!-- doxytag: member="LEFontInstance::yPixelsToUnits" ref="a21839c1d622f83399bd234f411a7ba67" args="(float yPixels) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float LEFontInstance::yPixelsToUnits </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>yPixels</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method converts pixels in the Y direction to font design units. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>yPixels</em>&nbsp;</td><td>- pixels in the Y direction</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>font design units in the Y direction</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004032">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<a class="anchor" id="a3c0b3e39ba6061842cf3b64f6d2cc8d6"></a><!-- doxytag: member="LEFontInstance::yUnitsToPoints" ref="a3c0b3e39ba6061842cf3b64f6d2cc8d6" args="(float yUnits) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual float LEFontInstance::yUnitsToPoints </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>yUnits</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This method converts font design units in the Y direction to points. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>yUnits</em>&nbsp;</td><td>- design units in the Y direction</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>points in the Y direction</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable004029">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="LEFontInstance_8h_source.html">LEFontInstance.h</a></li>
</ul>
</div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<hr size="1"/><address style="text-align: right;"><small>Generated on 16 Mar 2010 for ICU 4.4 by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>