Ở đây bạn có một ví dụ của một lớp mà tạo ra một gif động từ hình ảnh khác nhau:
Link
Lớp cung cấp những phương pháp:
class GifSequenceWriter {
public GifSequenceWriter(
ImageOutputStream outputStream,
int imageType,
int timeBetweenFramesMS,
boolean loopContinuously);
public void writeToSequence(RenderedImage img);
public void close();
}
Và cũng là một ví dụ nhỏ:
public static void main(String[] args) throws Exception {
if (args.length > 1) {
// grab the output image type from the first image in the sequence
BufferedImage firstImage = ImageIO.read(new File(args[0]));
// create a new BufferedOutputStream with the last argument
ImageOutputStream output =
new FileImageOutputStream(new File(args[args.length - 1]));
// create a gif sequence with the type of the first image, 1 second
// between frames, which loops continuously
GifSequenceWriter writer =
new GifSequenceWriter(output, firstImage.getType(), 1, false);
// write out the first image to our sequence...
writer.writeToSequence(firstImage);
for(int i=1; i<args.length-1; i++) {
BufferedImage nextImage = ImageIO.read(new File(args[i]));
writer.writeToSequence(nextImage);
}
writer.close();
output.close();
} else {
System.out.println(
"Usage: java GifSequenceWriter [list of gif files] [output file]");
}
}
Nguồn
2013-05-20 12:35:52
Ý của bạn là gif động? hoặc bạn muốn có một gif lớn làm bằng một gif nhỏ hơn? Hay bạn muốn dán một gif vào một gif khác bằng cách sử dụng tính minh bạch của gif? – Dariusz
Tôi muốn có một hình gif động. – user2399314
[link] này (https://github.com/dragon66/icafe/wiki) có nhiều thông tin hơn là chỉ tạo GIF động. – dragon66