是否可以将 html 画布中显示的内容捕获或打印为图像或 pdf?
我想通过画布生成图像,并能够从该图像生成 png。
原文由 Parand 发布,翻译遵循 CC BY-SA 4.0 许可协议
是否可以将 html 画布中显示的内容捕获或打印为图像或 pdf?
我想通过画布生成图像,并能够从该图像生成 png。
原文由 Parand 发布,翻译遵循 CC BY-SA 4.0 许可协议
HTML5 提供了在 Opera、Firefox 和 Safari 4 beta 中实现的 Canvas.toDataURL(mimetype)。但是,存在许多安全限制(主要与将来自另一个来源的内容绘制到画布上有关)。
所以你不需要额外的库。
例如
<canvas id=canvas width=200 height=200></canvas>
<script>
window.onload = function() {
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
context.fillStyle = "green";
context.fillRect(50, 50, 100, 100);
// no argument defaults to image/png; image/jpeg, etc also work on some
// implementations -- image/png is the only one that must be supported per spec.
window.location = canvas.toDataURL("image/png");
}
</script>
从理论上讲,这应该创建并导航到中间有一个绿色方块的图像,但我还没有测试过。
原文由 olliej 发布,翻译遵循 CC BY-SA 3.0 许可协议
13 回答12.8k 阅读
7 回答1.9k 阅读
4 回答2.9k 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答872 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
原始答案特定于类似问题。这已被修改:
使用 IMG 中的值,您可以将其作为新图像写出,如下所示:
或者