gpt4 book ai didi

android - 如何在 android 中应用 RGB 滤色器后将图像保存在 sdcard 中

转载 作者:太空宇宙 更新时间:2023-11-03 12:37:15 25 4
gpt4 key购买 nike

目前我正在设计一个基于照片编辑的应用程序。在这样做时我遇到了一个问题,即

  1. 我已通过此 link 学习了教程“如何为图像应用 RGB 滤色器”本教程非常有用,也很不错。
  2. 但问题是在对图像应用 RGB 滤色器后,我需要将更改后的图像保存在 SD 卡中。
  3. 为此我在谷歌上搜索了很多,但没有找到确切的东西。
  4. 他们中的许多人建议使用 paint() 但我不知道如何使用它。
  5. 所以我的问题是“在对图像应用 RBG 着色后我需要将该图像保存在 SD 卡中,但我没有找到如何做”?

最佳答案

如何将 Android ImageView 保存到 SD 卡

您有一个 ImageView,您已通过各种灯光效果和颜色过滤器对其进行了修改,现在您希望将结果作为 .jpg 或 .png 格式的图像保存到 SD 卡中。

方法如下:

  1. View 加载 Bitmap 图像。
  2. 位图图像保存到SD卡。

示例:
不要忘记测试异常并向您的 list 添加必要的权限!

ImageView imageView = <View to save to SD card>;
Bitmap bitmap = loadBitmapFromView(imageView);
final String pathTxt = Environment.getExternalStorageDirectory();
File storagePath = new File(pathTxt);
File file = new File(storagePath, "filename.jpg");
FileOutputStream out = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 80, out);
out.flush();
out.close();

private Bitmap loadBitmapFromView(View v) {
final int w = v.getWidth();
final int h = v.getHeight();
final Bitmap b = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
final Canvas c = new Canvas(b);
//v.layout(0, 0, w, h);
v.layout(v.getLeft(), v.getTop(), v.getRight(), v.getBottom());
v.draw(c);
return b;
}

关于android - 如何在 android 中应用 RGB 滤色器后将图像保存在 sdcard 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16206494/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com