Сделать наклонный шрифт текста в расширении

1. ovadia 18.02.21 17:47 Сейчас в теме
Подскажите, пожалуйста, как сделать наклонным шрифт текста?

Добавил новый реквизит строкового типа в расширение -- рекТекстСообщения. В процедуре модуля формы расширения, при определенном условии, этому реквизиту присваивается значение, например рекТекстСообщения = "Мой текст". Этот реквизит (текст) устанавливается в поле Описание формы_1 расширения. Это поле является реквизитом объекта, то есть доступно через Объект.Описание. И потом в другой форме_2 содержимое поля отображается в поле формы_2. В поле формы_2 могут существовать и другие текстовые значения, но их форматировать не надо.

Хотелось бы сделать, чтобы в поле формы_2 мое сообщение "Мой текст" было наклонным (и может быть другим цветом).
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. serg33rus 21 18.02.21 19:41 Сейчас в теме
Так поле Формы 2 - это поле ввода или Надпись. Если Надпись, то форматированная строка, а уж как ты ее отформатируешь - это на твое усмотрение. А если поле ввода, то у него свойство Шрифт. Но шрифт устанавливается уже для ВСЕГО поля ввода.
3. ovadia 19.02.21 09:36 Сейчас в теме
(2) Посмотрел. Оказывается поле Формы_2 -- это Поле HTML документа и оно получает текст в формате html.
4. serg33rus 21 19.02.21 10:41 Сейчас в теме
(3) Если формат html, то весь мир у твоих ног. В html тег <i> - курсив. Т.е. надо на этапе формирования html вставлять тэг в зависимости от каких-то условий.
5. ovadia 19.02.21 11:51 Сейчас в теме
(4) Ага. Еще можно вроде так: <em>мой текст</em>

Я добрался до форматирования этого поля в форме расширения.
Смотрю значение поля в Отладчике -- реквизит ЭтотОбъект.ПолноеОписаниеЗадачи, там стоит текст в формате <ht ml><head><body> ... </html>

Так все работает. В поле устанавливается текст "123". Новый текст перезатирает все старое в этом поле.

Процедура расш_ПолноеОписаниеЗадачиДокументСформированПосле(Элемент)
   s_new = <ht ml><body>123</body></html>
   ЭтотОбъект.ПолноеОписаниеЗадачи = s_new;
КонецПроцедуры


Потом делаю по другому.

Процедура расш_ПолноеОписаниеЗадачиДокументСформированПосле(Элемент)
   s_substring = "Мой текст";
   s_newstring = """" + s_substring + """";//на самом деле у меня  "" + s_substring + "" 
   s_summary = СтрЗаменить(ЭтотОбъект.ПолноеОписаниеЗадачи, s_substring, s_newstring);
   ЭтотОбъект.ПолноеОписаниеЗадачи = s_summary;
КонецПроцедуры


Не работает. Поле становится пустым. Ничего не отображается вообще. Ни старые, ни новые значения.
6. serg33rus 21 19.02.21 16:22 Сейчас в теме
(5)
А если сделать вот так?
s_new = <ht ml><body>123</body></html> 

Отобразится курсивом?

А зачем тэг <i> в двойных двойных кавычках? Ты же просто строку формируешь. "<i>" + "что-то там" - не срабатывает?
Но поскольку тебе надо заменить поле HTML значит и оформлять его надо как html. В начале вставить,
<ht ml><body>

а не просто текстуху совать. Хотя по идее и текстуху вроде бы должна показать. Точно уже не помню.
Оставьте свое сообщение
Вакансии
Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день

Программист 1C
Волгоград
зарплата от 200 000 руб.
Полный день

Аналитик
Санкт-Петербург
зарплата от 200 000 руб. до 250 000 руб.
Полный день