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 Kirill Grouchnikov <ki...@gmail.com> on 2019/08/14 18:54:51 UTC
Programmatic access to animation information
For a simple SVG content with animations such as this:
<!-- By Sam Herbert (@sherb), for everyone. More @ http://goo.gl/7AJzbL -->
<svg width="55" height="80" viewBox="0 0 55 80" xmlns="
http://www.w3.org/2000/svg" fill="#FFF">
<g transform="matrix(1 0 0 -1 0 80)">
<rect width="10" height="20" rx="3">
<animate attributeName="height"
begin="0s" dur="4.3s"
values="20;45;57;80;64;32;66;45;64;23;66;13;64;56;34;34;2;23;76;79;20"
calcMode="linear"
repeatCount="indefinite" />
</rect>
<rect x="15" width="10" height="80" rx="3">
<animate attributeName="height"
begin="0s" dur="2s"
values="80;55;33;5;75;23;73;33;12;14;60;80"
calcMode="linear"
repeatCount="indefinite" />
</rect>
<rect x="30" width="10" height="50" rx="3">
<animate attributeName="height"
begin="0s" dur="1.4s"
values="50;34;78;23;56;23;34;76;80;54;21;50"
calcMode="linear"
repeatCount="indefinite" />
</rect>
<rect x="45" width="10" height="30" rx="3">
<animate attributeName="height"
begin="0s" dur="2s"
values="30;45;13;80;56;72;45;76;34;23;67;30"
calcMode="linear"
repeatCount="indefinite" />
</rect>
</g>
</svg>
How do I get information on the animation "attached" to each corresponding
node in the tree returned by GVTBuilder.build?
UserAgentAdapter ua = new UserAgentAdapter();
DocumentLoader loader = new DocumentLoader(ua);
batikBridgeContext = new BridgeContext(ua, loader);
batikBridgeContext.setDynamicState(BridgeContext.DYNAMIC);
ua.setBridgeContext(batikBridgeContext);
GVTBuilder builder = new GVTBuilder();
Document svgDoc = loader.loadDocument(someURI);
GraphicsNode gvtRoot = builder.build(batikBridgeContext, svgDoc);
I'm not seeing anything on the nodes that would "connect" them to any
of the animation API classes exposed by Batik
Thanks
Kirill