带SVG Salamander的SVG动画(Java 1.8)

问题描述 投票:0回答:1

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

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

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

当前的层次结构使用,如果有帮助:SVGPanel < - Jlabel < - SVGIcon

java animation svg svg-salamander
1个回答
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秒* 1000)时,您必须在0ms-9999ms内为文件设置动画。击中第10秒将使其返回0秒。

© www.soinside.com 2019 - 2024. All rights reserved.