我是一个手表应用程序三星齿轮S2与EFL本机应用程序。
当我转动手表的手时,出现了问题。
看下面的图片。

这是正常的图像,我把它粘贴到evas_object上,它还没有旋转。
在我旋转它之后,手的边缘变成了像它一样的锯齿状。

齿轮s2的分辨率是360 pxx360px,所以我制作的每一幅图像都适合这个尺寸。
我用下面的代码旋转图像。
Evas_Map *m = NULL;
m = evas_map_new(4);
//evas_map_smooth_set(m, true);
evas_map_util_points_populate_from_object(m, obj);
evas_map_util_rotate(m, degree, cx, cy);
evas_object_map_set(obj, m);
evas_object_map_enable_set(obj, EINA_TRUE);
evas_map_free(m);我尝试用evas_map_smooth_set()函数修复它。
将EFL文档写入此设置,使图像“平滑”,默认设置为“真”。但我担心tizen会把它改成“假”。
但是,锯齿状的形状仍然显示,尽管我设置了正确或错误。
由“齿轮手表设计师”创造的手表表面没有锯齿状的图像旋转在那里的手。
我怎样才能旋转图像没有锯齿边缘?
发布于 2016-10-20 10:13:35
好的,我终于找到了为什么锯齿状的边缘会在旋转中出现。
在模拟器或我的齿轮s2中,默认的EFL呈现引擎不是opengl后端。
所以我可以用下面的代码来修正它。
elm_config_accel_preference_set("opengl");在创建窗口(elm_win_add)之前编写此代码,它将在旋转图像上生成反别名图像.
发布于 2017-03-07 03:07:56
很抱歉回答得太晚,但我相信你可以用两种方式解决这个问题:
evas_object_anti_alias_set()。elm_config_accel_preference_set("opengl:msaa");https://stackoverflow.com/questions/40025828
复制相似问题