我正在尝试打印在我的HTML中生成的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();
但是当我尝试将其转换为http://www.askapache.com/online-tools/base64-image-converter/
中的图像时,base64只会显示一个空白图片是否可以获取webgl画布对象的2D图像?
答案 0 :(得分: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();
试试吧。