Lienzo 1.0:HTML5 Canvas 元素的 Java 版本场景图 API

  • Kostis Kapelonis
  • 雷慈祥

2013 年 3 月 3 日

话题:JavaHTML5语言 & 开发架构

Emitrom是一家提供企业软件应用定制服务的公司,最近基于 Apache 许可证发布了Lienzo 1.0 稳定版本Lienzo是个GWT库,它是以HTML5 Canvas为后端,用 Java 实现的结构化图形工具包。Lienzo 构建在现有的GWT 的 Canvas 支持之上(查看演示),通过提供一套更高级的 Java API,以适应丰富动画,游戏,图片处理等。

Lienzo 1.0 提供了以下图像功能:

有个在线 demo 展示了几个示例(还有一些动画)以及他们的源码。

HTML 5 中 Canvas 元素通常在 JavaScript 中通过一套低级的接口以immediate 模式管理 GUI。GWT 提供的基本 Java API 只是在 JavaScript API 之上做了层简单封装,所以对于大多数企业开发人员来说这还是低级的接口。Emitrom 将基本 API 扩展成以retained 模式管理的完整场景图。这使得上述所有高级特性成为可能(例如动画)。

还能够扩展Lienzo 以支持未包含的其他图形。Emitrom 还暴露了核心的Context2D对象,它可直接访问 HTML 5 Canvas 元素的低级接口。对于那些需要这项能力的人来说,这使得开发 Lienzo 中默认不具备的功能,甚至从现有的 Canvas 应用种移植原生的 JavaScript 代码都成为可能。

最后,通过添加 Emitrom 提供的额外的库,Lienzo 也能在iOS上运行,通过 Adobe Air 还能够在桌面) 上运行,Flash4j 的引入进一步增强了跨平台开发的构想。

更多信息,请阅读用户手册以及 Javadoc。他们还提供了商业支持

查看英文原文:Lienzo 1.0: A Scene Graph API In Java For The HTML5 Canvas

JavaHTML5语言 & 开发架构