阿里巴巴開源的超輕量的跨平臺圖形渲染引擎——GCanvas

介紹

GCanvas是由阿里巴巴開發的用於移動設備的跨平臺渲染引擎。它是使用基於OpenGL ES的C ++編寫的,因此可以為Javascript運行時提供高性能的2D / WebGL渲染功能。它還具有類似於瀏覽器的canvas API,因此使用非常方便且靈活,特別是對於Web開發人員而言。支持的操作系統有Android 4.0+(API 14)和iOS 8.0+。


阿里巴巴開源的超輕量的跨平臺圖形渲染引擎——GCanvas


Github地址

https://github.com/alibaba/GCanvas

特性

  • 跨平臺,支持流行的iOS和Android
阿里巴巴開源的超輕量的跨平臺圖形渲染引擎——GCanvas

  • 高性能,通過OpenGL ES加速圖形繪製
  • 提供javascript運行時,例如Weex和ReactNative
阿里巴巴開源的超輕量的跨平臺圖形渲染引擎——GCanvas

  • 方便使用HTML畫布等Javascript API
  • 可擴展的體系結構
  • 輕量級

阿里巴巴開源的超輕量的跨平臺圖形渲染引擎——GCanvas


示例

以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

總結

GCanvas是用於移動應用程序的混合畫布SDK,使用Javascript繪製本機設備。它支持Weex和ReactNative等混合框架。GCanvas使用與HTML5 canvas相同的API。它同時支持圖形2D和WebGL API。GCanvas還利用大多數設備上的硬件加速功能,能夠使用Javascript以很高的幀速率繪製場景。


分享到:


相關文章: