首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更快: SWT还是Java2D?

更快: SWT还是Java2D?
EN

Stack Overflow用户
提问于 2010-06-19 02:30:47
回答 2查看 1.2K关注 0票数 2

SWT和Java2D哪个的图形性能更快?

在MacOSX上,SWT的图形是否通过Quartz Extreme,然后使用硬件加速的OpenGL进行渲染?

我不是指原生UI控件,而是问自定义2D图形渲染,如文本、直线、曲线和多边形。

EN

回答 2

Stack Overflow用户

发布于 2012-02-26 02:11:11

两者都使用平台的Graphics API

Java Swing和SWT采用相反的方法。

Java Swing使用Java2D来绘制它的小部件和自定义绘制,这是一个跨平台的图形api,它抽象了底层平台的图形api。现在Java2D的性能取决于平台的Native API的性能和效率。

SWT使用平台的本机图形API进行自定义绘制,并使用平台的本机GUI API (如果存在)来绘制其小部件。现在要注意的是,对于大多数平台,GUI API本身使用平台的图形API来绘制小部件。

图形化表示

正如你所看到的,最终所有的依赖于平台的Graphics API。因此,两者提供了大致相同的性能和速度。

一些例外情况

也有一些例外,这可能会影响性能,也可能不会。

  • Java Swing尽可能多地使用纯Java代码,这可能会提高性能。在某些平台上,
  • 除了使用平台的默认值之外,还可能使用更好、更快的Java2D,例如,它支持Windows上的Direct3D。
  • SWT依赖的本机代码在某些情况下可能比使用Java2D抽象更快。
票数 3
EN

Stack Overflow用户

发布于 2010-06-19 02:31:48

从理论上讲,SWT应该更快,因为它直接使用原生UI实现。

但在实践中,这完全取决于每个平台上的SWT和SWING实现。

根据我的经验,SWT在Windows中速度更快,但在Mac上不是更快。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3072208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档