2009-02-07 79 views
0

我无法始终设置img标签的宽度和高度。 img src是从数据库动态获取的。从数据库中拉出的图像可以有不同的宽度和高度,所以我需要设置img控件。有时候宽度和高度设置得适当,有时它们不是。我无法弄清楚为什么。任何帮助将不胜感激。谢谢!以编程方式设置数据库中图像的高度/宽度

这是我现在正在做的事情。

try 
    { 
     byte[] byteArray = GetImage(); 
     using (Bitmap bmp = ByteArrayToBitmap(byteArray)) 
     { 
      //image is the img tag. 
      image.Style["width"] = bmp.Width.ToString(); 
      image.Style["height"] = bmp.Height.ToString(); 
     } 
    } 
    catch (Exception ex) 
    { } 

编辑:这似乎是只在IE浏览器的问题。 Chrome和Firefox似乎工作正常。此外,如果浏览器刷新时IE7不显示具有适当高度/宽度的图像,则会正确显示。有时...

+0

是宽度和高度值有时从HTML失踪?或者有时是错的? – 2009-02-07 16:21:23

+0

尝试在您的catch块中放入一些日志代码,以查看您是否收到异常 – Cal 2009-02-07 16:23:53

+0

Tighe的高度和宽度值已在img标签中正确设置,但图像的高度和宽度似乎并未设置为这些值。例如,我有一个应该比宽高的图像,这是在html style =“width:450; height:240;”但比它长很多。 – SquidScareMe 2009-02-07 16:45:34

回答

2

这是因为您需要删除标记的宽度和高度属性。简单地更改CSS图像的宽度和高度值将不起作用。

尝试像这样,这是在Javascript中;


imageTag.removeAttribute('width'); 
imageTag.removeAttribute('height'); 
2

看看你的代码,我会建议另一种方法;既然你已经有了你的字节数组中的图像副本,为什么不让你的应用程序调整图像大小并将可预测的大小返回给客户端呢?您将获得不用担心不同浏览器调整大小并可能降低图像质量的好处。

例这里... http://www.west-wind.com/Weblog/posts/283.aspx

相关问题