javascript - 为从 Google Charts 创建的透明 Canvas /png 设置背景颜色

标签 javascript css html canvas background

我需要有关设置 Canvas 对象背景颜色的帮助,该 Canvas 对象是在 Google Charts Calendar 上使用 canvg 创建的。

这是 JS Fiddle .

下载的图像/png 具有透明背景,因为 Canvas 是这样的。我想更改它,使其不再透明而是白色。我尝试像这样使用 setAttribute:

  canvas.setAttribute(
    'style',
    'position: absolute; ' +
    'top: ' + (-chartArea.offsetHeight * 2) + 'px; ' +
    'left: ' + (-chartArea.offsetWidth * 2) + 'px;' +
    'backgroud-color: #fff;');

也使用这种方式:canvas.style.backgroundColor = 'blue'; 但是这些尝试都失败了,我一直没能找到一个好的答案。

非常感谢所有帮助。

最佳答案

尝试:

context = canvas.getContext("2d");

// set to draw behind current content
context.globalCompositeOperation = "destination-over";

// set background color
context.fillStyle = '#fff'; // <- background color

// draw background / rect on entire canvas
context.fillRect(0, 0, canvas.width, canvas.height);

来源:http://blogs.adobe.com/digitalmedia/2011/01/setting-the-background-color-when-generating-images-from-canvas-todataurl/

关于javascript - 为从 Google Charts 创建的透明 Canvas /png 设置背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26497270/

相关文章:

html - 我可以更快地在 CSS 动画中进行过渡吗?

javascript - 具有 ECMAScript 6 验证的 Eclipse IDE 替代品

javascript - 使用 Angular.js 或 JavaScript 将一个字符串替换为另一个字符串

javascript - 使用 jQuery 在 iframe 中选择一个元素

javascript - Ng-show 交换 DOM 不透明度动画

html - 我怎样才能摆脱那里的返回?

javascript - 通过单击动态更改 li 选择

javascript - 具有最少字符数要求的表格

javascript - jquery 文本旋转

html - 如何对齐三个 div(左/中/右)以在小屏幕左/右和它们下方的中心元素中对齐