我不会像GIF那样将简单的图像制作成动画图像。我可以选择图像库并存储在图像文件中。但是,如何将图像文件修改为动画图像或GIF文件。
答案 0 :(得分:2)
你必须选择想要制作GIF的图像,然后使用位图并在后台运行代码Thread / Asynchtask:
这里我使用了Drawable,在你的情况下将图像转换为位图并使用它。
Bitmap one=BitmapFactory.decodeResource(getResources(),R.drawable.neon0);
Bitmap two=BitmapFactory.decodeResource(getResources(),R.drawable.neon1);
Bitmap three=BitmapFactory.decodeResource(getResources(),R.drawable.neon2);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
AnimatedGifEncoder encoder = new AnimatedGifEncoder();
encoder.start(bos);
encoder.addFrame(one);
encoder.addFrame(two);
encoder.addFrame(three);
encoder.finish();
FileOutputStream outStream;
try{
outStream = new FileOutputStream(Environment.getExternalStorageDirectory().getPath() +
"/IMAGES_GIF/" + "animated.gif");
outStream.write(bos.toByteArray());
outStream.close();
}catch(Exception e){
e.printStackTrace();
}
从以下地址获取课程:
答案 1 :(得分:1)
这个问题需要更多信息。该文件是否已经是GIF并且它不是动画或您是否尝试将图像转换为GIF?后者是不可能的,GIF是一系列图像。
您必须在其他位置创建GIF,最简单的方法是使用Glide(https://github.com/bumptech/glide)或Picasso(http://square.github.io/picasso/)这样的库来加载GIF。