0

我正在尝试设计一种在支持渲染时显示 SVG 图像并在后备情况下显示 png 的方法。出于性能原因,我想在服务器端执行此操作,因为两者都是动态生成的图像格式。

有没有办法使用 Page.Request.Browser 来确定是否支持 SVG?

4

3 回答 3

1

找到这张表后,我最终对浏览器版本进行了硬编码。版本控制支持非常简单,所以我只是做了一个案例陈述。根据该表,其他所有内容都应支持 SVG(至少部分支持)。我不需要支持“Android 浏览器”,所以我忽略了它。

System.Web.HttpBrowserCapabilities browser;

switch (browser.Browser)
{
  case "Firefox":
  case "Mozilla":
  {
    return browser.MajorVersion >= 3;
  }
  case "IE":
  case "IEMobile":
  {
    return browser.MajorVersion >= 9;
  }
  default:
  {
     return true;
  }
}
于 2013-05-24T15:36:51.297 回答
0

也许不完全是您想要的,但我记得Modernizr.js对此提供支持

bool Modernizr.svg

您可以在查询字符串中使用此布尔值指向一个操作。

于 2013-05-24T05:40:07.967 回答
0

您可以使用 PNG 图像和 SVG 编写单独的部分页面。在客户端中,您可以检测到支持并向其中一个部分页面发出获取请求并将其放置在 DOM 中。

于 2013-05-24T06:45:05.340 回答