【发布时间】:2017-06-29 13:09:53
【问题描述】:
我在 Android Studio 中使用 Canvas,在画布上有 .png 图像,并希望将其保存到 sd 卡。是否可以?
如果是,那怎么办?
感谢和问候。
【问题讨论】:
-
- 创建位图 - 为位图获取画布 - 将画布绘制到位图中 - 保存位图
我在 Android Studio 中使用 Canvas,在画布上有 .png 图像,并希望将其保存到 sd 卡。是否可以?
如果是,那怎么办?
感谢和问候。
【问题讨论】:
此代码可能会对您有所帮助 (Saving canvas to bitmap on Android)
Bitmap toDisk = null;
try {
// TODO: Get the size of the canvas, replace the 640, 480
toDisk = Bitmap.createBitmap(640,480,Bitmap.Config.ARGB_8888);
canvas.setBitmap(toDisk);
toDisk.compress(Bitmap.CompressFormat.JPEG, 100, new FileOutputStream(new File("arun.jpg")));
} catch (Exception ex) {
}
【讨论】:
您应该已经使用 new Canvas(myBitmap); 创建了 Canvas。因此,当您在 Canvas 上绘图时,它会绘制到您的位图。
String fileName = Environment.getExternalStorageDirectory() + "/test.png";
OutputStream stream = new FileOutputStream(fileName);
/* Write bitmap to file using JPEG or PNG and 80% quality hint for JPEG. */
myBitmap.compress(CompressFormat.PNG, 80, stream);
stream.close();
【讨论】: