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)
Compare to: