\addtogroup rendering_backend_interfaces Rendering Backend Interfaces
 @{


 Abstracts a description of a 'composite glyph' (character string
 with associated font and styling information) in the SVG rendering
 backend for use by a rendering engine's nsISVGRendererGlyphGeometry
 objects. In addition to the attributes of the
 nsISVGGlyphMetricsSource interface, this interface contains
 absolute positioning and other information, such as e.g. individual
 character highlighting, which doesn't affect the actual metrics of
 the glyph. The metrics of the glyph, as given by the rendering
 engine-native object implementing nsISVGRendererGlyphMetrics are
 also provided as an attribute.

 An engine-native glyph geometry object will be informed of changes
 in its associated composite glyph with a call to its
 nsISVGRendererGlyphMetrics::update() method with an OR-ed
 combination of the UPDATEMASK_* constants defined in this interface
 (and its base-interface).

 @nosubgrouping
[uuid(b36065f1-c52b-4eda-b9ad-e483cf1a63bf)]
interface nsISVGGlyphGeometrySource : nsISVGGlyphMetricsSource

Constants


          
const unsigned long UPDATEMASK_METRICS = 262144

          
const unsigned long UPDATEMASK_X = 524288

          
const unsigned long UPDATEMASK_Y = 1048576

          
const unsigned long UPDATEMASK_HAS_HIGHLIGHT = 2097152

          
const unsigned long UPDATEMASK_HIGHLIGHT = 4194304

Attributes

 @} */

 @name Partial highlighting for selection feedback
 @{
readonly attribute boolean hasHighlight
 @name Glyph metrics
 @{
readonly attribute nsISVGRendererGlyphMetrics metrics
 @} */

 @name Glyph start position
 @{
readonly attribute float x

          
readonly attribute float y

Methods


          
[noscript] void getHighlight(out unsigned long charnum, out unsigned long nchars, out nscolor foreground, out nscolor background)