圖形子系統(tǒng)
圖形子系統(tǒng)主要包括UI組件、布局、動(dòng)畫、字體、輸入事件、窗口管理、渲染繪制等模塊,構(gòu)建基于輕量OS應(yīng)用框架滿足硬件資源較小的物聯(lián)網(wǎng)設(shè)備或者構(gòu)建基于標(biāo)準(zhǔn)OS的應(yīng)用框架滿足富設(shè)備的OpenHarmony系統(tǒng)應(yīng)用開發(fā)。
1.1 輕量系統(tǒng)
簡(jiǎn)介
圖形子系統(tǒng)主要包括UI組件、布局、動(dòng)畫、字體、輸入事件、窗口管理、渲染繪制等模塊,構(gòu)建基于輕量OS的應(yīng)用框架,滿足硬件資源較小的物聯(lián)網(wǎng)設(shè)備的OpenHarmony系統(tǒng)應(yīng)用開發(fā)。
圖 1 圖形子系統(tǒng)架構(gòu)圖[]()
各模塊介紹:
- View:應(yīng)用組件,包括UIView、UIViewGroup、UIButton、UILabel、UILabelButton、UIList、UISlider等。
- Animator:動(dòng)畫模塊,開發(fā)者可以自定義動(dòng)畫。
- Layout:布局控件,包括FlexLayout、GridLayout、ListLayout等。
- Transform:圖形變換模塊,包括旋轉(zhuǎn)、平移、縮放等。
- Event:事件模塊,包括click、press、drag、long press等基礎(chǔ)事件。
- Rendering engine:渲染繪制模塊。
- 2D graphics library:2D繪制模塊,包括直線、矩形、圓、弧、圖片、文字等繪制。包括軟件繪制和硬件加速能力對(duì)接。
- Multi-language:多語言模塊,用于處理不用不同語言文字的換行、整形等。
- Image library:圖片處理模塊,用于解析和操作不同類型和格式的圖片,例如png、jpeg、ARGB8888、ARGB565等
- WindowManager:窗口管理模塊,包括窗口創(chuàng)建、顯示隱藏、合成等處理。
- InputManager:輸入事件管理模塊。
目錄
/foundation/arkui
├── ui_lite # UI模塊,包括UI控件、動(dòng)畫、字體等功能
/foundation/graphic
├── surface_lite # 共享內(nèi)存
├── graphic_utils_lite # 圖形基礎(chǔ)庫和硬件適配層
/foundation/window
└── window_manager_lite # 窗口管理和輸入事件管理
約束
- 圖形組件不支持多線程并發(fā)操作,建議相關(guān)操作都在ui線程中執(zhí)行;
- utils/interfaces/innerkits/graphic_config.h文件列舉了圖形部分可配置功能的宏開關(guān),需要在編譯前配置,配置時(shí)需要注意部分宏開關(guān)是分平臺(tái)配置的。
鴻蒙開發(fā)學(xué)習(xí)知識(shí)已更新gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
前往參考。
1.2 標(biāo)準(zhǔn)系統(tǒng)
簡(jiǎn)介
圖形子系統(tǒng) 提供了圖形接口能力。
其主要的結(jié)構(gòu)如下圖所示:
OpenHarmony 圖形棧的分層說明如下:
? 接口層:提供圖形的 Native API能力,包括:WebGL、Native Drawing的繪制能力、OpenGL 指令級(jí)的繪制能力支撐等。
? 框架層:分為 Render Service、Drawing、Animation、Effect、顯示與內(nèi)存管理五個(gè)模塊。
模塊 | 能力描述 |
---|---|
Render Service (渲染服務(wù)) | 提供UI框架的繪制能力,其核心職責(zé)是將ArkUI的控件描述轉(zhuǎn)換成繪制樹信息,根據(jù)對(duì)應(yīng)的渲染策略,進(jìn)行最佳路徑渲染。同時(shí),負(fù)責(zé)多窗口流暢和空間態(tài)下UI共享的核心底層機(jī)制。 |
Drawing (繪制) | 提供圖形子系統(tǒng)內(nèi)部的標(biāo)準(zhǔn)化接口,主要完成2D渲染、3D渲染和渲染引擎的管理等基本功能。 |
Animation (動(dòng)畫) | 提供動(dòng)畫引擎的相關(guān)能力。 |
Effect (效果) | 主要完成圖片效果、渲染特效等效果處理的能力,包括:多效果的串聯(lián)、并聯(lián)處理,在布局時(shí)加入渲染特效、控件交互特效等相關(guān)能力。 |
顯示與內(nèi)存管理 | 此模塊是圖形棧與硬件解耦的主要模塊,主要定義了OpenHarmony顯示與內(nèi)存管理的能力,其定義的HDI接口需要讓不同的OEM廠商完成對(duì)OpenHarmony圖形棧的適配. |
? 引擎層:包括2D圖形庫和3D圖形引擎兩個(gè)模塊。2D圖形庫提供2D圖形繪制底層API,支持圖形繪制與文本繪制底層能力。3D圖形引擎能力尚在構(gòu)建中。
審核編輯 黃宇
-
API
+關(guān)注
關(guān)注
2文章
1464瀏覽量
61670 -
鴻蒙
+關(guān)注
關(guān)注
57文章
2287瀏覽量
42629 -
OpenHarmony
+關(guān)注
關(guān)注
25文章
3607瀏覽量
15958
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論