1
有什麼方法可以將我剛繪製的畫布內容複製到位圖中?如何將畫布複製到位圖
編輯:只是爲了澄清,我當前的繪圖過程如下:
Canvas canvas = holder.lockCanvas();
if (canvas != null)
{
onDraw(canvas); // this does all the drawing
// at this point I would like to copy the canvas into a bitmap
holder.unlockCanvasAndPost(canvas); // this makes the canvas visible to the user
}
編輯:看一下第一個答案貼出來,我寫了下面的代碼:
if (grab_screen == -1) // draw and show on screen as normal
{
Canvas canvas = holder.lockCanvas();
if(canvas != null)
{
onDraw(canvas);
holder.unlockCanvasAndPost(canvas);
}
}
else // draw into screengrab_bitmap[grab_screen]
{
Canvas canvas = new Canvas(screengrab_bitmap[grab_screen]);
onDraw(canvas);
grab_screen = -1;
}
這應該意味着如果我將grab_screen設置爲n,那麼在下次調用onDraw時,圖像將被寫入screengrab_bitmap [n]。
看起來不錯。據推測,我不會同時看到onDraw完成的繪圖(請參閱我的編輯)。那麼unlockCanvasAndPost呢?我認爲我不應該這樣稱呼它。 – Mick 2012-03-20 17:30:54
看看,也許幫助:http://javafriend.yolasite.com/myandroid/saving-bitmap-from-surface-view http://www.tutorialforandroid.com/2010/11/drawing-with-canvas-in -Android-saving.html – 2012-03-20 20:24:42