在我的 Android 应用程序 Activity 中,我有一个 RelativeLayout,其中包含一个 ImageView 和几个在运行时填充的 TextView。 我在用于将 ImageView 中的图像保存到设备 SD 卡的 Activity 中也有一个保存按钮。 现在我真正想做的是在单击“保存”按钮时将元素(RelativeLayout 中的图像和文本)一起转换为 PNG 图像,并将其保存到 SD 卡。
有没有人尝试过这样的转换?如果有人可以给我一些提示或代码 fragment 来说明如何执行此操作,那将非常有帮助?
保存功能工作正常,但目前只保存 ImageView 中的图像。
提前致谢。
最佳答案
RelativeLayout
是 View
的子类,以下内容适用于任何 View :
final View v; // The view that you want to save as an image
Bitmap bitmap = Bitmap.createBitmap(v.getWidth(), v.getHeight(), Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bitmap);
v.draw(c);
File outputFile; // Where to save it
FileOutputStream out = new FileOutputStream(imageFile);
boolean success = bitmap.compress(CompressFormat.PNG, 100, out);
out.close();
随意添加异常处理。 ;)
关于java - 如何将带有 Imageview 和 TextView 的 RelativeLayout 转换为 PNG 图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4188737/