在位图上绘制背景,我将绘制一个视图,我将导出到文件

时间:2013-03-11 16:46:02

标签: android canvas view bitmap drawable

我正在将我的视图导出到文件中。

我的问题是我使用的是Holo Light主题,但导出的文件背景很暗。

代码:

Bitmap b = Bitmap.createBitmap(totalWidth, totalHeight, Bitmap.Config.ARGB_8888);
Canvas mCanvas = new Canvas(b);
miVista.draw(mCanvas);          
FileOutputStream fos = new FileOutputStream(file);
b.compress(Bitmap.CompressFormat.JPEG, 100, fos); 

我尝试了很多东西,用另一种颜色来绘制它,而不是像drawcolorsetpixels等黑色,但我无法找到问题的正确答案。

Link to the picture with what you can see in the terminal

Link to the exported picture

2 个答案:

答案 0 :(得分:1)

使用

清除画布
mCanvas.drawColor(Color.WHITE); 

那么它将具有白色背景。你期望什么样的背景?

答案 1 :(得分:0)

我在其他帖子中找到了解决方案: Convert view to bitmaps...

Bitmap b = Bitmap.createBitmap(totalWidth, totalHeight, Bitmap.Config.ARGB_8888);
Canvas mCanvas = new Canvas(b);
Drawable bgDrawable =miVista.getBackground();
if (bgDrawable!=null) 
    bgDrawable.draw(mCanvas);
else 
    mCanvas.drawColor(Color.WHITE);
miVista.draw(mCanvas);  

使用Drawable对象的解决方案......