Implemented by
addtogroup renderer_interfaces Rendering Engine Interfaces
@{
One of a number of interfaces (all starting with nsISVGRenderer*)
to be implemented by an SVG rendering engine.
This interface serves as a factory for rendering engine-related
objects. Each rendering engine needs to make available an
nsIRenderer-object with a contract id of the form
"@mozilla.org/svg/renderer;1?tech=NAME".
Engines implemented at the moment include an ms windows gdi+ engine
("@mozilla.org/svg/renderer;1?tech=GDIPLUS") and a (somewhat)
cross-platform libart engine
("@mozilla.org/svg/renderer;1?tech=LIBART").
[scriptable, uuid(14e914e0-f283-4fd0-9d71-d3e842927007)]
interface nsISVGRenderer : nsISupports
Methods
Create a rendering engine-native canvas object for the Mozilla-native rendering context 'ctx' and presentation context 'presContext'. @param ctx Mozilla-native rendering context. @param presContext Presentation context. @param dirtyRect Area that the canvas should cover. @return A rendering engine-native canvas object.
[noscript]
nsISVGRendererCanvas
createCanvas(in nsIRenderingContext ctx, in nsPresContext presContext, [const] in nsRectRef dirtyRect)
Create a rendering engine-native glyph geometry object for the source object given by 'src'. @param src The source object describing the glyph for which this object is being created. @return A rendering engine-native glyph geometry object.
nsISVGRendererGlyphGeometry
createGlyphGeometry(in nsISVGGlyphGeometrySource src)
Create a rendering engine-native glyph metrics object for the source object given by 'src'. @param src The source object describing the glyph for which this metrics object is being created. @return A rendering engine-native glyph metrics object.
nsISVGRendererGlyphMetrics
createGlyphMetrics(in nsISVGGlyphMetricsSource src)
Create a rendering engine-native path geometry object for the source object given by 'src'. @param src The source object describing the path for which this object is being created. @return A rendering engine-native path geometry object.
nsISVGRendererPathGeometry
createPathGeometry(in nsISVGPathGeometrySource src)
Create a rendering engine-native region object for the given axis-aligned rectangle. @param x X-coordinate of rectangle (pixels). @param y Y-coordinate of rectangle (pixels). @param width Width of rectangle (pixels). @param height Height of rectangle (pixels). @return A rendering engine-native region object.
nsISVGRendererRegion
createRectRegion(in float x, in float y, in float width, in float height)
Create a rendering engine-native surface object. @param width Width of rectangle (pixels). @param height Height of rectangle (pixels). @return A rendering engine-native surface object.
[noscript]
nsISVGRendererSurface
createSurface(in unsigned long width, in unsigned long height)
Compare to: