带SVG Salamander的SVG动画(Java 1.8)

时间:2014-09-03 05:28:26

标签: java animation svg svg-salamander

我正在使用SVG Salamander和Java(1.8)。我该如何设置SVG图像的动画?

加载的.svg文件已包含动画。我想我需要以某种方式更新图像,但是如何?

我听说你可以通过SVGUniverse为每个DOM元素设置动画。但这听起来有点难看......

当前的分层用法,如果有帮助: SVGPanel< - Jlabel< - SVGIcon

1 个答案:

答案 0 :(得分:0)

我找到了这个答案。

new Timer(100, new ActionListener() {

                @Override
                public void actionPerformed(ActionEvent e) {
                    long diff = System.currentTimeMillis() - start_time;
                    icon.getSvgUniverse().setCurTime(diff % (10 * 1000));
                    try {
                        icon.getSvgUniverse().updateTime();
                    } catch (SVGException ex) {
                        ex.printStackTrace();
                    }
                    icon.paintIcon(null, g2, 0, 0);
                    //or repaint it somehow!
                }
            }).start();

请注意,当您的动画为T秒(此处为10 secons * 1000)时,您必须在0ms-9999ms内为文件设置动画。击中10秒将使其返回0秒。