gpt4 book ai didi

javascript - 如何在 javascript 中调整 html5 Canvas 的大小和位置

转载 作者:行者123 更新时间:2023-11-28 07:25:54 25 4
gpt4 key购买 nike

我正在使用 javascript 动态创建 Canvas 并将其显示在网页上,但 Canvas 的大小和 Canvas 的位置都根据正在查看网页的设备的大小而有所不同,无论是移动设备,还是桌面。我会在 css 中执行此操作,但据我所知,css 不能完全用于 html5 Canvas 。我会用这个:

#myCanvas{
height: 50%;
width: 50%;
position: relative;
top: 10%;
left: 10%;
}

但是 Canvas 的高度和宽度值只采用像素值,我能想到的唯一解决方案是获取父元素的大小,然后获取其中的一部分来描述我希望 Canvas 达到的大小是。但是,如果那不起作用,我不知道。就定位而言,我不知道我应该做什么。就像我说的那样,我正在动态创建 Canvas ,因此代码如下所示:

var c = document.createElement("canvas");
c.height = (whatever value);
c.width = (whatever value);
c.style.position = "relative";
c.style.top = (whatever value);
c.style.left = (whatever value);
var ctx = c.getContext('2d');
parentElement.appendChild('c');

如果有人能给我解决问题的方法,那将非常有帮助,谢谢 =)

最佳答案

将 Canvas 封装在容器 div 中,将此 div 的尺寸设置为成比例而不是固定。然后,使用 JQuery 的“调整大小”函数将 Canvas 的尺寸设置为容器 div 的宽度和高度。

$(window).resize(function() {
$('#canvas').attr('width', $('#parent').width());
$('#canvas').attr('height', $('#parent').height());
});

阅读本文了解更多信息:http://ameijer.nl/2011/08/resizable-html5-canvas/

关于javascript - 如何在 javascript 中调整 html5 Canvas 的大小和位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31820079/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com