1

我正在使用FlyingSaucer,这是一个纯基于 java 的 XHTML-Renderer,它本机集成到 swing 中。为了显示图像,它提供了一个 ReplacedElementFactory,它获取一个 W3C-DOM-Element 并可以用一个 ReplacedElement 替换它。

显示图像的实现是从 ReplacedElementFactory 返回一个 java.awt.Image,通过 ImageIO.read(..) 加载,然后渲染。这意味着整个加载是 EDT 线程中的阻塞操作,在加载多个外部图像时冻结 UI...

我想知道如何返回一个表示“图像正在加载”的 awt.Image,将加载分派给一个线程,然后,我的问题来了,用实际加载的图像替换返回的、已经渲染的 Placeholder-ImageIsLoading。那么有没有可能改变现有的 awt.Image 然后强制它重新绘制/刷新/无论如何?

有什么建议吗?

4

1 回答 1

0

我已经构建了一个自定义“图像扩展组件”并在加载时重新绘制图像并另外调用 FlyingSaucer 的重新布局方法

于 2012-02-07T07:49:32.613 回答