Как получить текст записи без атрибутов elm в Tizen?

Я устанавливаю текст в поле ввода на часах Tizen, но из-за того, что он слишком большой, чтобы поместиться на экране, я использую меньший размер шрифта с атрибутом <font_size>. Но после редактирования, когда я получаю текст обратно, он также возвращает мне эти атрибуты.

Я подумал о том, чтобы сделать строковую операцию для удаления этих атрибутов тегов html / elm. Но после редактирования поле ввода добавит добавленный текст после этих атрибутов вяза.

например: entry_text_set(entry, "<font_size=15>Hello,This is our text.</font_size>"); вернет тот же текст, включая атрибуты для elm_object_text_get(entry);. Теперь строковая операция хороша, если эти теги находятся в конце, поскольку нам придется выполнить больше операций по вычислению символов, если они находятся между другими текстами. Теперь, после добавления hello в поле ввода, он возвращает это: <font_size=15>Hello,This is our text.</font_size>Hello.

Как я могу получить текст без <font_size> / любых таких атрибутов?


person Rifat    schedule 21.04.2020    source источник


Ответы (1)


По поводу вопроса «Как я могу получить текст без / без таких атрибутов?».

Вы можете использовать elm_entry_markup_to_utf8(const char *s). Этот API удалит все теги разметки из вашей строки. Но вы должны иметь в виду, что текст utf8 должен быть преобразован обратно в текст разметки перед вставкой в ​​elm_entry. (можно использовать elm_entry_utf8_to_markup).

Надеюсь, мой ответ будет вам полезен.

person WooHyun Jung    schedule 22.04.2020