Module Vgr_svg
Vg SVG renderer.
References.
- Erik Dahlström et al. Scalable Vector Graphics (SVG) 1.1, 2011.
%%VERSION%% - homepage
SVG render targets
val target : ?xml_decl:bool -> ?xmp:string -> unit -> Vg.Vgr.dst_stored Vg.Vgr.target
target xml_decl xmp ()
is an SVG render target for rendering to the stored destination given toVg.Vgr.create
.xml_decl
, iftrue
(default) the XML declaration is output.xmp
is an optional UTF-8 encoded XML XMP metadata packet describing the SVG document (see ISO 16684-1 or the equivalent Adobe spec.). The convenience functionVg.Vgr.xmp
can be used to generate a packet.
Multiple images. Multiple image renders on the target are not supported.
Invalid_argument
is raised by Rendering if multiple images are rendered.
Text rendering
Warning. The following is subject to change in the future.
Currently text rendering uses SVG's CSS font selection mechanism and doesn't support the glyph API.
Given a glyph cut:
Vg.I.cut_glyphs
~text ~blocks ~advances font glyphs
The blocks
, advances
and glyphs
parameters are ignored. text
must be provided and is used to define the text to render. font
is used to select the font in a CSS stylesheet.
Render warnings and limitations
The following render warnings are reported.
`Unsupported_cut (`O o, i)
, outline area cuts can be performed only on (possibly transformed)Vg.I.const
,Vg.I.axial
andVg.I.radial
images.`Unsupported_glyph_cut (a, i)
, glyph cuts can be performed only on (untransformed)Vg.I.const
,Vg.I.axial
andVg.I.radial
images.`Textless_glyph_cut i
if notext
argument is specified in a glyph cut.
The following limitations should be taken into account.
- Generated SVG files do specify that gradient interpolation must be done in linear sRGB space, however many SVG viewers do not respect that directive (e.g. most browsers).