当我尝试使用 SWT 渲染 SVG 文件时,我遇到了 Batik 的性能问题。它看起来像是一个非常臃肿的库,但我能找到的唯一另一个是 SVGSalamander,它看起来只是 Swing。有没有一种方法可以渲染 SVG 而无需先将它们转换为更快的位图形式?它需要是跨平台的。
问问题
3622 次
1 回答
3
如果您只需要渲染,我强烈推荐使用 Mozilla (XULRunner) 或 WebKit (WebKitGTK+),因为两者都可以嵌入到 SWT 库中。
- Mozilla XULRunner可用于 Windows、Linux 和 Mac。通过将样式标志传递给构造函数,可以在 SWT
Browser
类中使用它。SWT.Mozilla
- 在 Mac OS X 上,SWT 默认使用 Safary(即 WebKit)。在 Linux 上,它是 SWT 3.7的默认浏览器(仅处于早期阶段)。
org.eclipse.swt.browser.UseWebKitGTK
如果您有 SWT 3.6.0+,您可以通过将系统属性传递为 true 来强制 SWT 使用 WebKit 。在 Windows 上,可以在此处找到GenuiTec 的 WebKitGTK+ 端口。
总而言之,XULRunner 的 SVG 引擎更容易工作,因为它的支持范围更广。您可以为任何平台创建应用程序的一体化包(捆绑 XULRunner)。我个人不推荐在 Windows 上使用 Genuitec 的 SWT WebKit,因为它还不够成熟。
于 2010-09-11T06:10:38.730 回答