使用SWT在Java中进行SVG渲染 - Batik太慢了

时间:2010-09-10 23:53:51

标签: java vector svg swt batik

当我尝试使用SWT渲染SVG文件时,我遇到了Batik的性能问题。它看起来像一个非常臃肿的库,但我唯一能找到的另一个是SVGSalamander,看起来它只是Swing。有没有办法渲染SVG而不首先将它们转换为位图形式更快?它需要跨平台。

1 个答案:

答案 0 :(得分:3)

如果您只需要渲染,我强烈建议您使用Mozilla(XULRunner)或WebKit(WebKitGTK +),因为它们都可以嵌入到SWT库中。

  • Mozilla XULRunner可用于Windows,Linux和Mac。通过将Browser样式标志传递给构造函数,可以在SWT SWT.Mozilla类中使用它。
  • 在Mac OS X上,SWT默认使用Safary(WebKit)。在Linux上,它是默认的浏览器as of SWT 3.7(刚刚处于早期阶段)。如果您有SWT 3.6.0+,则可以通过将系统属性org.eclipse.swt.browser.UseWebKitGTK传递为true来强制SWT使用WebKit。在Windows上,GenuiTec有一个WebKitGTK +的端口,可以是found here

总而言之,XULRunner的SVG引擎更容易工作,因为它的支持范围更广。您可以为任何平台创建应用程序的一体化软件包(捆绑XULRunner)。我个人不建议在Windows上使用Genuitec的SWT WebKit,因为它还不够成熟。