svgl is a library that displays SVG documents using OpenGL, taking advantage of the GPU.
A lot of svg 1.0 features are implemented: simples shapes, path, gradient, clipping, viewBox, opacity, < use >, animations etc.
Fonts are handled by the glft companion library, which allows for autoscaling according to the current scale, and automatic choice between vectorized glyphs or textures based on freetype2 rendering.
Texturized fonts are antialiased by freetype, while every other drawings are FSAA by OpenGL.
Next step is optimization by using various techniques like display list, culling, and cache rendering into textures.
Picking is provided under 2 forms:
- returns the deepest SVG element (leaf) corresponding to the shape designated by the user
- returns the stack of SVG elements under the cursor, so that UI techniques like toolglasses (see screenshot) is easily implemented
PanAndZoom done right (according to me...) : since it's fast and usable, we can really use it in an interface
Tansform so-called "consolidation" (concatenation of transform matrices) allows easy implementation of scale-independant D'n'D.
We try to make the api as simple as possible, for creating, manipulating, changing style, loading etc.
See demos/tutorial to see how to code with svgl.
A (pre-alpha) python extension allows for rapid application development and easy integration in wxPython.