介绍
GCanvas是由阿里巴巴开发的用于移动设备的跨平台渲染引擎。它是使用基于OpenGL ES的C ++编写的,因此可以为Javascript运行时提供高性能的2D / WebGL渲染功能。它还具有类似于浏览器的canvas API,因此使用非常方便且灵活,特别是对于Web开发人员而言。支持的操作系统有Android 4.0+(API 14)和iOS 8.0+。
Github地址
https://github.com/alibaba/GCanvas
特性
- 跨平台,支持流行的iOS和Android
- 高性能,通过OpenGL ES加速图形绘制
- 提供javascript运行时,例如Weex和ReactNative
- 方便使用HTML画布等Javascript API
- 可扩展的体系结构
- 轻量级
示例
以Weex为例,使用GCanvas编写2d图形的代码片段:
import { enable, WeexBridge, Image as GImage } from "@gcanvas/core"; var gcanvas = enable(this.$refs.canvas_holder, {bridge: WeexBridge}); var ctx = gcanvas.getContext("2d"); //rect ctx.fillStyle = 'red'; ctx.fillRect(0, 0, 100, 100); //rect ctx.fillStyle = 'black'; ctx.fillRect(100, 100, 100, 100); ctx.fillRect(25, 210, 700, 5); //circle ctx.arc(450, 200, 100, 0, Math.PI * 2, true); ctx.fill(); var image = new GImage(); image.src = 'TB1KwRTlh6I8KJjy0FgXXXXzVXa-225-75.png'; image.onload = function(){ ctx.drawImage(image, 100, 300); };
谁在使用?
总结
GCanvas是用于移动应用程序的混合画布SDK,使用Javascript绘制本机设备。它支持Weex和ReactNative等混合框架。GCanvas使用与HTML5 canvas相同的API。它同时支持图形2D和WebGL API。GCanvas还利用大多数设备上的硬件加速功能,能够使用Javascript以很高的帧速率绘制场景。