我想让文本对齐到elm_label
小部件的中心。我找不到任何关于文本对齐的函数,如evas对象文本函数或elm_label
函数。另外,我找不到一个可以在标签上获得文本大小(绝对像素或相对大小)的函数。
我已经尝试了elm_object_style_set
和marker
,它在标签的中心显示了粗体文本,但字体大小太小(小于默认样式)。(我不想在文本上加粗)
如何将文本对齐到标签的中心?
您可以使用HTML之类的标记来自定义在elm_label中显示文本的方式。
要使文本与中心对齐,可以使用值为center
的<align>
标记。
std::string text = "<align = center> TEXT TO DISPLAY </align>";
Evas_Object *label = elm_label_add(parent);
elm_object_text_set(label,text.c_str());
evas_object_show(label);
您还可以使用其他标签,如font_weight
, font_style
来定制您的显示文本。所有可能的标签列表可以在这里找到
可以通过evas_object
API设置标签的对齐方式。你要找的可能是:
evas_object_size_hint_align_set(label, 0.5, EVAS_HINT_FILL);
evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
0.5是居中,你可以尝试0.0作为左对齐,1.0作为右对齐。