我正在学习three.js,在一个示例中,作者创建了一个画布元素,然后将呈现器绑定到该画布元素。
<canvas id="c">
</canvas>
const renderer = new THREE.WebGLRenderer({canvas});
然后,他获取画布元素,并将其存储到一个带有canvas = renderer.domElement;
的变量中。
canvas.width
和canvas.clientWidth
有什么区别?
发布于 2021-03-27 22:18:09
差异来自于HTMLCanvasElement (<canvas/>
)规范。width
属性特定于HTMLCanvasElement,表示由画布的一行存储的“逻辑像素数”。另一方面,clientWidth
属性是所有元素都是共同的,表示画布水平占用的像素数。这些不一定是相同的--例如,为了提高性能或支持devicePixelRatio >1 (如高密度显示器),通常在画布中以比页面上的空间更高或更低的分辨率绘制画布。
https://stackoverflow.com/questions/66835903
复制相似问题