一个工具,用于通过ImageBundle反转精灵组合的过程,并将生成的精灵分割回图像片段

时间:2012-10-17 18:03:23

标签: gwt sprite clientbundle gwt-compiler

是否有任何工具(可能 GWT编译器本身可用作独立应用程序)从编译期间创建的*.cache.png文件生成单个图像?

或者,是否可以通过API获得映射信息(用于精灵几何)?

我在StackOverflow上查看了GWT repositorythe documentation的信息,可能还有关于该主题的每个Google群组,但无济于事。

动机

我的目标是通过指示GWT编译器避免内联图像(使用<set-property name="ClientBundle.enableInlining" value="false" />)来提供对Web应用程序进行白色标记的简单方法,从而强制在每个用户代理上使用精灵图像。构建一个WAR并将其传递给图形设计师,只编辑打包WAR中的图像资源(希望通过提供这样的工具使他/她更容易)。

设计师不会使用提供的工具来反汇编和重新组合精灵图像,以方便编辑。

插图

sprite to snippets

1 个答案:

答案 0 :(得分:1)

嗯,这不是一件容易的事(真的,在设计师完成作业后重新编译应用程序要简单得多),但是没有理由你没有&#39这样做。

首先,您可以要求GWT编译器将生成的类输出到磁盘(使用-gen参数)。您将找到ClientBundle的实施方案,所有ImageResource方法都会返回ImageResourcePrototype的实例。 IIRC,您应该能够编译这些类并使用它们来获取每个精灵的区域,从而从包中提取单个图像,然后重新打包它们。