如何在Java中创建动画GIF?
2022-09-03 08:10:43
我想从BufferedImages集合中创建一个gif图像。我该怎么做?纯Java中有这样的库吗(ImageMagick不是一个选项)?我找到了Gif4J库,但它不是免版税的。
我想从BufferedImages集合中创建一个gif图像。我该怎么做?纯Java中有这样的库吗(ImageMagick不是一个选项)?我找到了Gif4J库,但它不是免版税的。
我只是在这里回答了一个类似的问题,但我认为我的解决方案可以提供帮助。
“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
有一个图像处理库,类似于毕加索,它使用与Lifelogger提到的相同的AnimaltGifEncoder类 - 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();