介紹
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以很高的幀速率繪製場景。
閱讀更多 最美分享Coder 的文章