【发布时间】:2015-08-13 19:02:06
【问题描述】:
我正在尝试在调整窗口大小时动态调整 pixi 舞台(画布和内容)的大小。并且还让它最初以浏览器窗口的大小加载而不改变比例。
我使用以下方法将初始大小设置为window.innerWidth & window.innerHeight。
但它做了一些奇怪的事情,它以较小的尺寸加载(但不是 html 中指定的画布尺寸),然后它正在扩展以适应窗口。
var w;
var h;
window.onload = function() {
var w = window.innerWidth;
var h = window.innerHeight;
//this part resizes the canvas but keeps ratio the same
renderer.view.style.width = w + "px";
renderer.view.style.height = h + "px"
// init();
};
这是我的 onresize 函数 - 它正在调整画布的大小,而不是内容。
我认为它正在更新renderer.view,它会调整内容的大小,但它没有这样做。
如何调整stage/renderer.view 内容的大小?
window.onresize = function (event){
var w = window.innerWidth;
var h = window.innerHeight;
//this part resizes the canvas but keeps ratio the same
renderer.view.style.width = w + "px";
renderer.view.style.height = h + "px";
//this part adjusts the ratio:
renderer.resize(w,h);
}
// create an new instance of a pixi stage
var stage = new PIXI.Stage(0xff00ff);
var renderer = PIXI.autoDetectRenderer(window.innerWidth, window.innerHeight);
// add the renderer view element to the DOM
var mypixiStage = document.body.appendChild(renderer.view);
【问题讨论】:
-
你想保持什么比例?或者,默认的画布尺寸是多少?
-
这是一个非常好的问题 :D 现在是 1920x1080,所以是 16x9。但这可能需要稍后改变。我编辑了上面的仅供参考。
-
我的回答有帮助吗?
标签: javascript jquery canvas pixi.js