2010-09-20 35 views
2

我可以在畫布上繪製簽名。現在,我想將這個簽名保存爲一張稍後可以使用的圖像。使用畫布

我無法在此畫布上實施onClicklistener。另外我不清楚這個簽名如何作爲圖像存儲。請建議?

回答

2

試試這個:

Bitmap bmp = Bitmap.createBitmap(...); 
Canvas can = new Canvas(bmp); 

當你改變你的畫布,BMP位圖也可能發生變化。畫布只與位圖畫布有關,並且您不需要保存畫布。只保存位圖(bmp)。

+0

但如何保存位圖到一張SD卡? – NickHalden 2010-09-20 10:29:48

+1

我認爲你需要使用壓縮(Bitmap.CompressFormat格式,int質量,OutputStream流) – 2010-09-21 05:10:37

+0

此方法將位圖寫入outputStream。之後,將此輸出流寫入SD卡上的文件。 – 2010-09-21 05:11:20

0

要將畫布圖形保存爲圖像,需要使用toDataURL方法將其轉換爲數據url。一旦你的數據鏈接,你可以用它來設置圖像元素的來源,這樣用戶可以右鍵點擊並下載圖像:

// save canvas image as data url (png format by default) 
var dataURL = canvas.toDataURL(); 

// set canvasImg image src to dataURL 
// so it can be saved as an image 
document.getElementById("canvasImg").src = dataURL; 

參考:http://www.html5canvastutorials.com/advanced/html5-canvas-save-drawing-as-an-image/

+0

但Android不太支持'toDataURL' :( – 2012-03-27 14:43:56