javascript - canvas.toDataURL 返回空白图像

标签 javascript canvas todataurl

我想将表格绘制到 Canvas 上,然后将 Canvas 另存为图像。 (需要创建pdf)

有趣的是,表格显示在 Canvas 上,但我无法使用 .toDataURL 转换它,它只是返回一个空白图像。

控制台中没有任何警报。

function getImgDataTable(tableContainer) {
    var tableArea = tableContainer.getElementsByTagName('table')[0].parentNode;
    var doc = tableContainer.ownerDocument;
    var canvas = doc.createElement('canvas');
    canvas.setAttribute('width', tableArea.offsetWidth);
    canvas.setAttribute('height', tableArea.offsetHeight);
    doc.body.appendChild(canvas);
 /* using rasterizeHTML.js */
    rasterizeHTML.drawHTML('<div style="font-size: 20px;">' + $("#data-table-chart-0").html()+ '</div>', canvas);
    var imgDataTable = canvas.toDataURL();
    console.log(imgDataTable);
    return imgDataTable;
}

我没有想法,每一个见解都值得赞赏。

最佳答案

试试这个http://jsfiddle.net/XtUFt/ html

   <div id="c"></div>
<div id="i"></div>

js

var canvas = document.createElement("canvas");
canvas.height = canvas.width = 200;
$('#c').append(canvas);

var ctx = canvas.getContext("2d");

//draw a circle
ctx.beginPath();
ctx.arc(75, 75, 70, 0, Math.PI*2, true); 
ctx.closePath();
ctx.fill();

var dataURL = canvas.toDataURL("image/png");

$('#i').append($('<img/>', { src : dataURL }));

关于javascript - canvas.toDataURL 返回空白图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22014146/

相关文章:

javascript - HTML5 Canvas - 添加更多圆圈以圆周运动旋转

javascript - 限制每个输入的ajax调用

android - 不规则形状怎么画?

axios - 将图片从数据 url 上传到 Axios?

javascript - 范围内的裁剪线

javascript - CSS更改文本标签的X位置

javascript - 堆叠的 Canvas 元素,最顶层的 Canvas 阻止事件到达其他 Canvas

Android AdMob 横幅添加到 Canvas 之上?

javascript - 从 Canvas 保存图像时缺少扩展名

javascript - 是否可以从 Canvas 上下文的 getImageData 在网络 worker 中生成图像(blob 或数据 url)?