Javascript 如何使用HTML5Canvas和JS制作响应性角色
根据本教程,我使用HTML5画布和Javascript创建了一个角色: 尽管我现在正在努力使角色具有响应性,但我已经尝试了以下方法:Javascript 如何使用HTML5Canvas和JS制作响应性角色,javascript,jquery,html,canvas,Javascript,Jquery,Html,Canvas,根据本教程,我使用HTML5画布和Javascript创建了一个角色: 尽管我现在正在努力使角色具有响应性,但我已经尝试了以下方法: function resize(){ $("#canvasDiv").outerHeight($(window).height()-$("#canvasDiv").offset().top- Math.abs($("#canvasDiv").outerHeight(true) - $("#canvasDiv").outerHeight())); }
function resize(){
$("#canvasDiv").outerHeight($(window).height()-$("#canvasDiv").offset().top- Math.abs($("#canvasDiv").outerHeight(true) - $("#canvasDiv").outerHeight()));
}
$(document).ready(function(){
var myWidth = $(window).width()-$("#canvasDiv").offset().top- Math.abs($("#canvasDiv").outerWidth(true) - $("#canvasDiv").outerWidth());
var myHeight = $(window).height()-$("#canvasDiv").offset().top- Math.abs($("#canvasDiv").outerHeight(true) - $("#canvasDiv").outerHeight());
prepareCanvas(document.getElementById("canvasDiv"), myWidth, myHeight);
$(window).on("resize", function(){
var newWidth = $(window).width()-$("#canvasDiv").offset().top- Math.abs($("#canvasDiv").outerWidth(true) - $("#canvasDiv").outerWidth());
var newHeight = $(window).height()-$("#canvasDiv").offset().top- Math.abs($("#canvasDiv").outerHeight(true) - $("#canvasDiv").outerHeight());
$( "#canvasDiv" ).empty();
prepareCanvas(document.getElementById("canvasDiv"), newWidth, newHeight);
});
});
但这似乎只是剪切图像,而不是调整其大小
这是一个演示:这是因为您只是调整画布的大小,其中的图像保持不变,因此超出了画布的范围。需要使用“缩放”功能按当前宽度和高度除以所需的宽度和高度来缩放画布上的场景:
context.scale(x, y); // Where x and y are ratios (1 being 100%).
需要考虑的事项:
这是因为您只是调整画布的大小,其中的图像保持相同的大小,因此超出了画布的边界。需要使用“缩放”功能按当前宽度和高度除以所需的宽度和高度来缩放画布上的场景:
context.scale(x, y); // Where x and y are ratios (1 being 100%).
需要考虑的事项: