fix(vg_lite): fix linear gradient matrix error (#7110)
Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com> Co-authored-by: pengyiqiang <pengyiqiang@xiaomi.com>
@@ -270,12 +270,14 @@ static void task_draw_cb(void * ctx, const lv_vector_path_t * path, const lv_vec
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case LV_VECTOR_DRAW_STYLE_GRADIENT: {
|
case LV_VECTOR_DRAW_STYLE_GRADIENT: {
|
||||||
vg_lite_matrix_t grad_matrix;
|
vg_lite_matrix_t grad_matrix = matrix;
|
||||||
vg_lite_identity(&grad_matrix);
|
|
||||||
|
|
||||||
#if !LV_USE_VG_LITE_THORVG
|
#if LV_USE_VG_LITE_THORVG
|
||||||
/* Workaround inconsistent matrix behavior between device and ThorVG */
|
/* Workaround inconsistent radial gradient matrix behavior between device and ThorVG */
|
||||||
lv_vg_lite_matrix_multiply(&grad_matrix, &matrix);
|
if(dsc->fill_dsc.gradient.style == LV_VECTOR_GRADIENT_STYLE_RADIAL) {
|
||||||
|
/* Restore matrix to identity */
|
||||||
|
vg_lite_identity(&grad_matrix);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
vg_lite_matrix_t fill_matrix;
|
vg_lite_matrix_t fill_matrix;
|
||||||
lv_vg_lite_matrix(&fill_matrix, &dsc->fill_dsc.matrix);
|
lv_vg_lite_matrix(&fill_matrix, &dsc->fill_dsc.matrix);
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.4 KiB |
|
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.0 KiB |