awtk/docs/manual/g2d_t.md

116 lines
3.7 KiB
Markdown
Raw Normal View History

2019-10-16 17:12:55 +08:00
## g2d\_t
### 概述
2018-12-28 17:43:54 +08:00
2D加速接口。
2019-10-16 17:12:55 +08:00
----------------------------------
### 函数
<p id="g2d_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#g2d_t_g2d_blend_image">g2d\_blend\_image</a> | 把图片指定的区域渲染到framebuffer指定的区域src的大小和dst的大小不一致则进行缩放。 |
| <a href="#g2d_t_g2d_copy_image">g2d\_copy\_image</a> | 把图片指定的区域拷贝到framebuffer中。 |
| <a href="#g2d_t_g2d_copy_image">g2d\_copy\_image</a> | 把图片指定的区域进行旋转并拷贝到framebuffer相应的区域本函数主要用于辅助实现横屏和竖屏的切换一般支持90度旋转即可。 |
| <a href="#g2d_t_g2d_fill_rect">g2d\_fill\_rect</a> | 用颜色填充指定的区域。 |
#### g2d\_blend\_image 函数
-----------------------
* 函数功能:
2018-12-28 17:43:54 +08:00
> <p id="g2d_t_g2d_blend_image"> 把图片指定的区域渲染到framebuffer指定的区域src的大小和dst的大小不一致则进行缩放。
1.硬件不支持缩放则返回NOT_IMPL。
2.硬件不支持全局alphaglobal_alpha!=0xff时返回NOT_IMPL。
2019-10-16 17:12:55 +08:00
* 函数原型:
```
ret_t g2d_blend_image (bitmap_t* fb, bitmap_t* img, rect_t* dst, rect_t* src, uint8_t global_alpha);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败返回失败则上层用软件实现。 |
| fb | bitmap\_t* | framebuffer对象。 |
| img | bitmap\_t* | 图片对象。 |
| dst | rect\_t* | 目的区域。 |
| src | rect\_t* | 源区域。 |
| global\_alpha | uint8\_t | 全局alpha。 |
#### g2d\_copy\_image 函数
-----------------------
* 函数功能:
2018-12-28 17:43:54 +08:00
> <p id="g2d_t_g2d_copy_image"> 把图片指定的区域拷贝到framebuffer中。
2019-10-16 17:12:55 +08:00
* 函数原型:
```
ret_t g2d_copy_image (bitmap_t* fb, bitmap_t* img, rect_t* src, xy_t dx, xy_t dy);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败返回失败则上层用软件实现。 |
| fb | bitmap\_t* | framebuffer对象。 |
| img | bitmap\_t* | 图片对象。 |
| src | rect\_t* | 要拷贝的区域。 |
| dx | xy\_t | 目标位置的x坐标。 |
| dy | xy\_t | 目标位置的y坐标。 |
#### g2d\_copy\_image 函数
-----------------------
* 函数功能:
2018-12-28 17:43:54 +08:00
> <p id="g2d_t_g2d_copy_image"> 把图片指定的区域进行旋转并拷贝到framebuffer相应的区域本函数主要用于辅助实现横屏和竖屏的切换一般支持90度旋转即可。
2019-10-16 17:12:55 +08:00
* 函数原型:
```
ret_t g2d_copy_image (bitmap_t* fb, bitmap_t* img, rect_t* src, lcd_orientation_t o);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败返回失败则上层用软件实现。 |
| fb | bitmap\_t* | framebuffer对象。 |
| img | bitmap\_t* | 图片对象。 |
| src | rect\_t* | 要旋转并拷贝的区域。 |
| o | lcd\_orientation\_t | 旋转角度(一般支持90度即可)。 |
#### g2d\_fill\_rect 函数
-----------------------
* 函数功能:
2018-12-28 17:43:54 +08:00
> <p id="g2d_t_g2d_fill_rect"> 用颜色填充指定的区域。
2019-10-16 17:12:55 +08:00
* 函数原型:
```
ret_t g2d_fill_rect (bitmap_t* fb, rect_t* dst, color_t c);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败返回失败则上层用软件实现。 |
| fb | bitmap\_t* | framebuffer对象。 |
| dst | rect\_t* | 要填充的目标区域。 |
| c | color\_t | 颜色。 |