我正在使用SVG Salamander和Java(1.8)。我该如何设置SVG图像的动画?
加载的.svg文件已包含动画。我想我需要以某种方式更新图像,但是如何?
我听说你可以通过SVGUniverse为每个DOM元素设置动画。但这听起来有点难看......
当前的分层用法,如果有帮助: SVGPanel< - Jlabel< - SVGIcon
答案 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秒。