JS – 从base64代码中获取图像的宽度和高度

我有一个base64 img encoded ,你可以在这里find。 我怎样才能得到它的高度和宽度?

 var i = new Image(); i.onload = function(){ alert( i.width+", "+i.height ); }; i.src = imageData; 

用这个图像创build一个隐藏的<img> ,然后使用jquery .width()和。 高度()

 $("body").append("<img id='hiddenImage' src='"+imageData+"' />"); var width = $('#hiddenImage').width(); var height = $('#hiddenImage').height(); $('#hiddenImage').remove(); alert("width:"+width+" height:"+height); 

testing在这里: FIDDLE

图像最初不是隐藏的。 它被创build,然后你得到宽度和高度,然后删除它。 在这种情况下,这可能会在大图像中造成非常短的可见性,因此您必须将图像包装在另一个容器中,并且隐藏该容器而不是图像本身。


另一个小提琴,不会根据gp。的anser添加到dom中: 这里

我发现使用.naturalWidth和.naturalHeight的效果最好。

 var img = new Image(); img.onload = function() { var imgWidth = img.naturalWidth, imgHeight = img.naturalHeight; }; 

这仅在现代浏览器中受支持。 http://www.jacklmoore.com/notes/naturalwidth-and-naturalheight-in-ie/