[英]CreateJS: Elements in Stage or Canvas are not scaling properly on window resize
因此,我在調整窗口大小時正在調整舞台(畫布)的大小。 盡管畫布本身正確地進行了調整,但是畫布的內容並沒有真正縮放,在某些情況下,某些元素(例如:文本,按鈕等)並不完全可見。
這是代碼
stage = new Stage(document.getElementById("canvas"));
window.addEventListener('resize',resize,false);
function resize() {
var w = window.innerWidth;
var h = window.innerHeight;
var ow = stage.canvas.width;
var oh = stage.canvas.height;
// keep aspect ratio
scale = Math.min(w / ow, h / oh);
stage.scaleX = scale;
stage.scaleY = scale;
// adjust canvas size
stage.width = ow * scale;
stage.height = oh * scale;
stage.update();
}
我有什么想念的嗎?
一些快速的事情:
您不能設置舞台的寬度/高度,而應該設置畫布的尺寸。 除非您嘗試裁剪內容,否則您也不需要限制其長寬比。
stage.width = ow * scale;
stage.height = oh * scale;
接下來,您可以考慮將內容放入容器中並對其進行縮放,而不是直接擴展。
希望有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.