我在stackoverflow问题中发现了如何在canvas http://jsfiddle.net/ArtBIT/kneDX/中绘制,现在我希望画布覆盖整个html页面。例如:
<body>
<div id="2">
//code
</div>
<div id="2">
//code
</div>
</body>
因此画布将附加到页面,用户可以绘制页面内容。那么有没有办法创建画布以便将100%的主体隐藏在绘画线之外?
的编辑: 的
如何在上面的代码中不设圆圈的情况下连续画线?还有什么方法可以在文本上画一些东西,而不是在鼠标移过它时选择它吗?
答案 0 :(得分:2)
首先,使画布的height
和width
属性等于page height和page width。 (获取这些值非常困难,所以请查看链接的问题以获得最佳方法 - 或者只使用jQuery。)
接下来,添加一些CSS以使画布位于页面的绝对左上角:
#canvas {
position: absolute;
top: 0;
left: 0;
}
然后,不会像现在这样通过调用ctx.clearTo
来更改画布的背景颜色。画布为transparent by default,因此只要您不更改背景颜色,您就可以看到它下面的页面。
答案 1 :(得分:0)
传递正确的宽度和高度参数而不是(200,200)
使用window.screen.width
和window.screen.height
可以获得:http://jsfiddle.net/kneDX/878/
<强>更新强>
有了这个,我们最终会在画布上与窗口一样大,与客户区域的大小不同。请参阅apsillers's answer。