JCanvas:我如何获得图像的大小?

JCanvas:我如何获得图像的大小?

问题描述:

我已经绘制的图像是这样的:JCanvas:我如何获得图像的大小?

$("canvas").drawImage({ 
     x: 0, 
     y: 0, 
     source: src, 
     draggable: true, 
     layer: true, 
     name: "image", 
     fromCenter: false, 
    } 
}); 

的图片显示,因为它应该。它比屏幕更大,我想绘制一个更小的矩形(按0.05倍),其边与原始图像成比例。如何检索上述图像的宽度和高度?

我想:

var imageWidth = $("canvas").getLayer("image").width; 
var imageHeight = $("canvas").getLayer("image").height; 

alert($("canvas").getLayer("image").width);回报null。我也试过:

var imageWidth = $("canvas").getCanvasImage.width; 
var imageHeight = $("canvas").getCanvasImage.height; 

alert($("canvas").getCanvasImage.width);返回undefined

+1

我不知道这个库,但打了一下他们的操场上,似乎可以下'load'检索事件参数,如果未设置宽度和高度选项,则在传递的参数的sWidth和sHeight属性下。听起来很奇怪,当你设置宽度和高度选项时,它会消失,但我可能不会进一步进入这个库;-) – Kaiido

+0

Ps:这里是[我使用的游乐场]的链接(http://projects.calebevans.me/jcanvas /沙箱/?代码= Ly8gRnVuY3Rpb24gZm9yIGRyYXdpbmcgYW4gYXJjCmZ1bmN0aW9uIGFyYyhlKSB7CiAgY29uc29sZS5sb2coZS5zV2lkdGgsIGUuc0hlaWdodCk7CiAgJCgnY2FudmFzJykuZHJhd0FyYyh7CiAgICBzdHJva2VTdHlsZTogJyM2ZjknLAogICAgc3Ryb2tlV2lkdGg6IDQsCiAgICB4OiAxNTUsIHk6IDE1NSwKICAgIHJhZGl1czogNDAKICB9KTsKfQoKLy8gUnVuIHRoZSBhcmMoKSBmdW5jdGlvbiBhZnRlciB0aGUgaW1hZ2UgaGFzIGxvYWRlZAokKCdjYW52YXMnKS5kcmF3SW1hZ2UoewogIHNvdXJjZTogJ2ltYWdlcy9sYWR5YnVnLmpwZycsCiAgeDogMTUwLCB5OiAxNTAsCiAgbG9hZDogYXJjCn0pOw ==) – Kaiido

+0

是的,你是对的。我必须等待图像加载完成,然后才能检索其属性。谢谢! – kalabalik

您可以使用下面的语句来获得高度和帆布图像的宽度

var imageWidth = $("canvas").width(); 
var imageHeight = $("canvas").height(); 
+0

这将返回canvas元素的计算宽度和高度,而不是图像的宽度和高度 – Kaiido