如何找到base64图像的宽度和高度

时间:2013-01-11 09:09:28

标签: javascript jquery html

如何找到base64图像的宽度和高度

<img id="thumb0" width="200" height="200" 
src="data:image/png;base64, ................">

图像属性宽度和高度是不变的,因为我需要将它们显示为缩略图,但原始图像属性的位置不同。

我需要获得原始图像的高度和宽度。

假设我的原始图像高度和宽度 750 X 500

我试过这样但得到属性宽度和高度

$("#thumb0").width();

200

请帮助您了解图像的原始宽度和高度。

2 个答案:

答案 0 :(得分:16)

您可以构建另一个图像元素并获取其大小:

var img = new Image();
img.src = $('#thumb0').attr('src');
var originalWidth = img.width;

答案 1 :(得分:6)

在dystroy的答案中提到的Image() constructor for HTMLImageElements是正确的方法,但有一点需要注意:构造函数实际上是异步的!因此,您可能会在某些浏览器中遇到意外行为;根据我的有限实验,dystroy的代码在Chrome中可以100%有效,但有时仅在Firefox和Safari中有效。别了解别人。

正确的方法似乎是with an onload handler,如:

var img = new Image();
img.src = some_base64_image_source;
console.log(img.width);       // This might print out 0!
img.onload = function() {
    console.log(img.width);   // This will print out the width.
}