将HTML绘制到画布

时间:2011-05-23 13:58:36

标签: javascript canvas

随着新HTML5 Canvas的出现,我想知道是否可以在画布上绘制HTML部分?

我们的想法是获取一段现有的HTML代码(来自同一页面,或在其他地方定义)并将其转换为图形。

类似的东西:

htContext.drawElement(document.getObjectByID("someObj"),0,0);

1 个答案:

答案 0 :(得分:3)

Firefox拥有专有方法drawWindow。有了它,您可以在画布上绘制整个文档。但不幸的是只在火狐中。而且由于安全问题,您需要用户的权限才能执行此操作。所以它只适用于某种内部项目。

以下是示例测试页面:

<!DOCTYPE html>
<html>
<head>
    <title>drawWindow</title>
    <script>
        window.onload = function(){
            netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead');
            document.getElementById('canvas').getContext('2d').drawWindow(window, 0, 0, 100, 200, "rgb(255,255,255)");
        }
    </script>
</head>
<body>
    <h1>Test</h1>
    <canvas id="canvas"></canvas>
</body>
</html>