You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-users@xmlgraphics.apache.org by Sergiy Dubovik <se...@leiki.fi> on 2004/04/09 16:36:23 UTC
Reading SVG, drawing and saving using SVGGraphics2D
Hello!
I need to prepare screenshots of my application. I choosed batik to
generate those screenshots using SVGGraphics2D and
drawing lines, circles etc on it. Everything was just fine, until now. I
need to load one svg file, combine it with lines, circles etc
and save it in the svg format. I thought it will be simple, create
JSVGCanvas and call paintComponent(svggraphicsgc). I got my lines, circles
etc but no loaded svg image. Then I realized that batik uses different
threads to load and process svg. So I added listeners and
combinanation of wait/notify to wait until image will be ready. It
didn't help, I still don't see svg image. The question is how can I load
svg file, resize it a bit and save with other graphics into new svg file?
Could someone give an advise?
Thanks!
Sergiy
--- listener ---
logo.addGVTTreeRendererListener(new GVTTreeRendererAdapter() {
/**
* Called when a rendering started.
*/
public void gvtRenderingStarted(GVTTreeRendererEvent e) {
System.out.println("gvtRenderingStarted");
}
/**
* Called when a rendering was completed.
*/
public void gvtRenderingCompleted(GVTTreeRendererEvent e) {
System.out.println("gvtRenderingCompleted");
synchronized (logo) {
logo.notify();
}
}
});
---- saving ----
SVGGraphics2D svgGenerator = new SVGGraphics2D(document);
GenerateScr test = new GenerateScr();
test.paintComponent(svgGenerator);
test.paintSvgLogo(svgGenerator);
test.waitWhenRenderingComplete();
boolean useCSS = true;
try {
Writer out = new OutputStreamWriter(System.out, "UTF-8");
svgGenerator.stream(out, useCSS);
} catch (UnsupportedEncodingException e) {
e.printStackTrace(System.err);
} catch (SVGGraphics2DIOException e) {
e.printStackTrace(System.err);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: batik-users-unsubscribe@xml.apache.org
For additional commands, e-mail: batik-users-help@xml.apache.org