Roy*_*son 0 java gif kotlin android-drawable android-glide
我正在尝试使用 Android Commit Content API制作图像键盘。为了实现这一点,我需要能够在设备上存储.png文件.gif并从中创建文件对象。
目前,我正在使用 Glide 库从互联网上获取图像。我可能获取的示例图像是这样的。Glide 库为我提供了drawables包含动画 GIF 的库。我需要能够将这些可绘制对象编码为.gif可以在用户手机上保存为文件的文件。
我怎样才能做到这一点?
我查看了现有的帖子,例如:How to conversion a Drawable to a Bitmap? ,但它们没有帮助,因为该Bitmap对象无法存储动画 GIF。
这篇文章:将 gif 文件从可绘制文件保存到手机 SD 中?并在使用后将其从 SD 中删除似乎也相关,但是,它没有解释如何将动画Drawable对象转换为对象列表Bitmap。
此外,它没有解释如何将一系列Bitmap对象保存为 1 个 GIF 文件。
这是将 Glide 库中的文件保存GifDrawable为文件的方法。
private fun gifDrawableToFile(gifDrawable: GifDrawable, gifFile: File) {
val byteBuffer = gifDrawable.buffer
val output = FileOutputStream(gifFile)
val bytes = ByteArray(byteBuffer.capacity())
(byteBuffer.duplicate().clear() as ByteBuffer).get(bytes)
output.write(bytes, 0, bytes.size)
output.close()
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1273 次 |
| 最近记录: |