The SVG Terminal
1 March 2006: Second release, with text highlighting!
It's designed for apps running on a mobile device which need to present a sophisticated UI on nearby screens via wi-fi, and apps which need to drive multiple network screens with graphical scenes in near-real-time.
Getting started: download and unpack the .zip file, then start svgtermdemo.exe. Open a Firefox window, and drag-drop svgterm.xml onto it. The browser will ask you to authorize this file. The Firefox SVG engine currently eats memory slowly but steadily, so you may need to restart Firefox occasionally. When working with Firefox SVG a lot, we suggest creating a separate Firefox profile and launching it with MOZ_NO_REMOTE=1.
What's next: we're working on text wrapping, text highlighting, and flowing text around inset objects. We're also plotting to allow OLE objects onto SVG Terminal views, so apps can surface non-SVG content as neccesary.
SVG Scene/Canvas Library
February 2006 update: The SVG Scene Lib is no longer being maintained outside of airWRX, and now uses the SVG Terminal protocol to specify drawing instead of rendering via cairo. Our final cairo-based release remains available on this page for the time being.
Our SVG Scene toolkit enables applications to create interactive views by constructing and editing an SVG content model, or scene (also known as a canvas). The scene may be presented simultaneously in multiple windows, possibly on separate clients. The scene may be manipulated by multiple processes, enabling compound documents. The SVG Scene library supports ownership of content model elements by widgets of high-level application frameworks, but is not tied in to such frameworks. Rendering of the scene is done via cairo and Pango, which in turn support diverse environments, e.g. Windows, MacOS, Postscript, Xlib, etc.
airWRX is based on this library, and offers a sophisticated demo of it. The library comes with example code, but it's simplistic for the sake of clarity.
The current release is a prototype that requires Windows 2000 or later. It uses cairo for drawing and Win32 GDI for text and images. Full source code is included, licensed under GNU LGPL. Feedback requested!Goals
Provide a multi-screen drawing toolkit for applications and frameworks
SVG object model defines a scene
23 Jun 05 - incremental rendering
text layout via pango