尝试使用SWT渲染SVG文件时,蜡染布出现性能问题.看来这是一个非常肿的库,但是我可以找到的唯一另一个库是SVGSalamander,它看起来像是只有Swing一样.有没有一种方法可以渲染SVG,而无需先将它们转换为位图形式,因此速度更快?它需要跨平台.
最佳答案
如果只需要渲染,我强烈建议使用Mozilla(XULRunner)或WebKit(WebKitGTK),因为两者都可以嵌入到SWT库中.
> Mozilla XULRunner可在Windows,Linux和Mac中使用.通过将SWT.Mozilla样式标志传递给构造函数,可以在SWT Browser类中使用它.
>在Mac OS X上,默认情况下SWT使用Safary(即WebKit).在Linux上,它是默认的Browser 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,因为它还不够成熟.