【问题标题】:GWT create Image using ImageResourceGWT 使用 ImageResource 创建图像
【发布时间】:2012-07-26 16:57:40
【问题描述】:

我的问题真的很简单。但希望我能有一个明确的答案。 我们可以通过多种方式创建 GWT Image。

Image image = new Image ( (ImageResource)imageRes);

Image image = new Image ( (ImageResource)imageRes.getSafeUri() );

Image image = new Image ();
image.setUrl((ImageResource)imageRes.getSafeUri().asString() );

我的问题是:这三种使用 ImageResouce 创建新图像的方法有什么区别。对于首次加载,哪一个最好或更快?

谢谢

【问题讨论】:

  • 为什么这个问题被否决了?这对我来说是一个完全合理的问题。

标签: java image gwt gwt-2.4 clientresource


【解决方案1】:

首先,你不应该使用最后两个。

ImageResource 在技术上表示“精灵”图像中的区域:它具有精灵的 URL 和该图像上区域的坐标。在许多浏览器中,对于大多数图像,URL 实际上是一个data: URL,并且该区域将代表整个图像。这可以使用@ImageOptions(preventInlining=true) 或在gwt.xml 上使用set-property 全局控制每个图像。换句话说,您的代码不应依赖它,而应始终将ImageResource 视为精灵图像中的一个区域。
仅供参考,默认情况下实际使用精灵图像的情况适用于不支持 data: URL 的 IE6/7,以及太大而无法放入 data: URL 的图像(所有浏览器)。

然而,这正是您在最后两种情况下所做的:仅使用ImageResource 的 URL,就好像它不是(可能)一个精灵图像。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    • 2012-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多