我想从BufferedImages集创建一个gif图像。我怎样才能做到这一点?纯Java中是否有这样的库(ImageMagick不是一个选项)?我找到了Gif4J库,但它并不是免费的。
答案 0 :(得分:3)
我只是回答类似的问题here,但我认为我的解决方案可以提供帮助。
'ImageIcon'类允许您加载gif动画。我用'getResource()'加载图像。为此,我通常使用URL类来传递文件路径。在名称URL可能建议的远程机器中不需要该路径。
URL url = This.class.getResource(path);
Icon myImgIcon = new ImageIcon(url);
JLabel imageLbl = new JLabel(myImgIcon);
component.add(imageLbl, BorderLayout.CENTER);
path将是类文件夹中gif的路径。
参考文献: http://docs.oracle.com/javase/tutorial/uiswing/components/icon.html#getresource
答案 1 :(得分:0)
有一个图像处理库,类似于Picasso,它使用了与Lifelogger提到的完全相同的AnimatedGifEncoder类 - Glide Docs,Glide
AnimatedGifEncoder e = new AnimatedGifEncoder();
e.start(outputFileName);
e.setDelay(1000); // 1 frame per sec
e.addFrame(image1);
e.addFrame(image2);
e.finish();