Ruby and SVG


#1

Dear ALL,

I’m an absolutely beginner to Ruby.
But, besides the language itself (which seems quite interesting to
me ) it is importnat to find out what support is available for XML
and in particular for SVG. I served a bit around “Ruby SVG” and my
impression is that there is maybe no active development.

I have to create a lot of technical drawings and charts.
Another point is the renderer and may be in addition an interactive
canvas.

Can anybody feedback some comment on this.

Thanks a lot

Rolf


#2

2008/11/23 RolfK <Rolf.Kemper@…>:

canvas.
Take a look at RMagick and RVG.

Regards,

Serabe


#3

Hi,

In removed_email_address@domain.invalid
“Ruby and SVG” on Sun, 23 Nov 2008 19:25:46 +0900,
RolfK removed_email_address@domain.invalid wrote:

Can anybody feedback some comment on this.
You can use rcairo that is the Ruby bindings for cairo to
output SVG.

rcairo: http://cairo.rubyforge.org/
cairo: http://cairographics.org/

You can use Ruby/RSVG that is the Ruby bindings for librsvg
to render SVG:

Ruby/RSVG: http://ruby-gnome2.sourceforge.jp/hiki.cgi?Ruby%2FRSVG
librsvg: http://librsvg.sourceforge.net/
(News in the page is outdated.)

Wikipedia also uses librsvg:
http://en.wikipedia.org/wiki/Librsvg

Thanks,


#4

Philip,

thank you for your suggestion.
Up to today I have created my SVGs out of a data xml by xslt/xpath
2.0. But this was not interactive, as displaying the result took a
renderer.
If I understand your idea right, I could use Inkscape to create all
the shape objects out of my Ruby program.
Does the binding also handle mouse events (e.g. created by mouseup/
down) on an Inksacpe SVG object ?

Phlip schrieb:


#5

RolfK wrote:

canvas.
JRuby + Batik!

http://xmlgraphics.apache.org/batik/


#6

RolfK wrote:

Can anybody feedback some comment on this.
libxml-ruby is going to handle SVG fine - but low level, without
awareness of
all the nodes’ meanings.

You need to think first of a high-level editor that is already written.
Inkscape, for example, is open-source, and has Ruby bindings. So, IIRC,
does
Google Sketchup.

Then write unit tests for everything you do. I would use XPath in those
tests to
spot-check the SVG contents…


#7

There’s a new gem called Rasem.
https://github.com/aseldawy/rasem
It’s very easy to use and generates SVG directly. It’s still in Alpha
release but it looks promising.