2015-05-17 89 views
1

我試圖打印一個在我的HTML中生成的canvas webgl對象。base64 canvas webgl對象爲空

的HTML DOM:

 <canvas id="__viewer0-canvas" class="scroller " width="818" height="423" style="touch-action: none; -webkit-transform: scale(1) translate(0px, 0px); -webkit-user-select: none; -webkit-user-drag: none; width: 818px !important; height: 423px !important; "></canvas> 

我使用以下命令獲取對象dataURL

 $('#__viewer0-canvas')[0].toDataURL(); 

但BASE64只是給出一個空白圖像當我試圖將其轉換爲圖像中http://www.askapache.com/online-tools/base64-image-converter/

是否有可能獲得webgl畫布對象的二維圖像?

回答

1

首先設置{preserveDrawingBuffer: true}

var ctx= canvas.getContext("experimental-webgl", {preserveDrawingBuffer: true}); 

其次,你需要等待,直到它加載

var imgSrcBase64 = null; 

var img = new Image(); 

img.onload = function(){ 

// call any thing you want here 

}; 

img.src = $('#__viewer0-canvas')[0].toDataURL(); 

試試吧。