当我在画布上绘制图像时,我必须指定画布的宽度和高度,以便它与我试图绘制的图像大小相匹配。
<script>
window.onload = function() {
var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
var imageObj = new Image();
imageObj.onload = function() {
context.drawImage(imageObj, 0, 0);
};
imageObj.src = "<%=image_path('logo.jpg')%>";
};
</script>
<canvas id="myCanvas" width="700" height="400"></canvas>
指定画布宽度和高度不是很好,因为我可能需要使用不同于取决于屏幕分辨率的值,我需要处理比例,所以我想知道如何处理这个以及如何在不必指定画布的宽度和高度的情况下绘制图像。
答案 0 :(得分:0)
我建议使用百分比来指定高度和宽度。这些将值定义为包含块的百分比。
此外,只要您将这些属性赋予特定值,就应明确定义类型(例如width="700px"
)。
答案 1 :(得分:0)
您不一定需要指定画布宽度和高度。您可以随时通过其宽度和高度属性更改它。您还可以使用固定大小的画布,然后缩放图像,使其适合或拉伸。
您可以在此fiddle几种情况中看到。
然后,您可以使用按钮触发其他缩放模式
我希望这可以帮助你获得一些想法。