Тип: Цвет. Содержит цвет фона текста форматированного документа.
Полное описание, параметры и ограничения
ТекстФорматированногоДокумента.ЦветФона (FormattedDocumentText.BackColor)
ТекстФорматированногоДокумента (FormattedDocumentText)
ЦветФона (BackColor)
Доступен, начиная с версии 8.3.1.
Использование:
Чтение и запись.
Описание:
Тип: Цвет.
Содержит цвет фона текста форматированного документа.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Использование в версии:
Доступен, начиная с версии 8.3.1.
Методическая информация
Практические примеры
Показать на форме оформленную памятку с двумя шагами и итогом
Законченная собственная форма отображает заголовок, нумерованные шаги и зелёный итог. Пользователь может сверить расчёт кнопкой без записи в базу.
Где и как запускать
Полный модуль отдельной управляемой формы с реквизитом УчебныйТекст, полем и командой, перечисленными в подготовке.
Подготовка
Создайте отдельную учебную внешнюю обработку и пустую управляемую основную форму.
В реквизитах формы добавьте УчебныйТекст типа ФорматированныйДокумент. Перетащите его на форму: поле ПолеУчебногоТекста, Вид = Поле форматированного документа, Только просмотр = Да.
Создайте команду УчебныйПример и кнопку этой команды. Действие команды свяжите с процедурой УчебныйПример.
Событие формы ПриСозданииНаСервере свяжите с одноимённой процедурой. Вставьте ВЕСЬ модуль и откройте учебную EPF в клиенте Windows.
Это собственная учебная памятка. Она не является макетом рабочего отчёта и не отправляется на принтер.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
УчебныйТекст = СоздатьУчебнуюПамятку();
КонецПроцедуры
&НаСервереБезКонтекста
Функция СоздатьУчебнуюПамятку()
Документ = Новый ФорматированныйДокумент;
Заголовок = Документ.Добавить("Расчёт учебной покупки");
Заголовок.Шрифт = Новый Шрифт("Arial", 16, Истина);
Заголовок.ЦветТекста = Новый Цвет(25, 50, 80);
Заголовок.Родитель.ГоризонтальноеПоложение = ГоризонтальноеПоложение.Центр;
Шаг1 = Документ.Элементы.Добавить(Неопределено, Неопределено);
Шаг1.ТипПараграфа = ТипПараграфаФорматированногоДокумента.НумерованныйСписок;
Шаг1.Отступ = 12;
Шаг1.МеждустрочныйИнтервал = 1.2;
Шаг1.Элементы.Добавить("Выберите товар: Книга.");
Шаг2 = Документ.Элементы.Добавить(Неопределено, Неопределено);
Шаг2.ТипПараграфа = ТипПараграфаФорматированногоДокумента.НумерованныйСписок;
Шаг2.Отступ = 12;
Шаг2.МеждустрочныйИнтервал = 1.2;
Шаг2.Элементы.Добавить("Количество 3, цена 250 руб., сумма 3 × 250 = 750 руб.");
Итог = Документ.Элементы.Добавить(Неопределено, Неопределено);
Итог.ТипПараграфа = ТипПараграфаФорматированногоДокумента.Обычный;
ТекстИтога = Итог.Элементы.Добавить("Итого: 750 руб. Ничего не записано в базу.");
ТекстИтога.ЦветТекста = Новый Цвет(20, 110, 50);
ТекстИтога.ЦветФона = Новый Цвет(235, 248, 239);
ТекстИтога.Шрифт = Новый Шрифт("Arial", 12, Истина);
Возврат Документ;
КонецФункции
&НаКлиенте
Процедура УчебныйПример(Команда)
Сумма = 3 * 250;
Сообщить(Сумма = 750);
Сообщить(СтрНайти(УчебныйТекст.ПолучитьТекст(), "750 руб.") > 0);
КонецПроцедурыРазбор по шагам
УчебныйТекст — реквизит именно этой учебной формы, поле связано с ним путём к данным.
Объект ФорматированныйДокумент содержит корневую коллекцию параграфов. Внутри параграфа — текстовые элементы, картинки и переводы строк.
Добавить у документа создаёт текст; через Родитель получаем его параграф для выравнивания заголовка.
Добавить(Неопределено, Неопределено) у корневой коллекции создаёт пустой параграф. Добавить у его Элементы создаёт содержимое этого параграфа.
Отступ измеряется в поинтах, МеждустрочныйИнтервал — относительный множитель размера шрифта. Это разные единицы.
Кнопка проверяет расчёт и наличие итога в тексте; она не проводит документ и не печатает.
Как проверить результат
В форме видны заголовок по центру, два нумерованных пункта и выделенный итог 750 руб.
Кнопка выводит две Истина; поле в режиме Только просмотр не позволяет менять памятку.
Проверьте оформление визуально в своём клиенте: эти сообщения проверяют расчёт и текст, не пиксельный вид.
Ожидаемый результат
Получена самостоятельная читаемая учебная памятка на управляемой форме.
На что обратить внимание
Если поле отображает не документ, проверьте Вид поля и ПутьКДанным=УчебныйТекст.
Сами строки нумерованных пунктов не содержат цифр: номера отображает ТипПараграфа.
Внешний вид шрифта зависит от наличия Arial и среды клиента; это не доказательство одинаковой вёрстки во всех клиентах.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Отличить текстовый элемент, его параграф и перевод строки
В одном параграфе создаём две строки Книга и Ручка. Текст и перевод строки имеют общую родительскую структуру, но разные типы.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Отдельная учебная база, серверный общий модуль УчебныеЗадачи. Фрагмент без директив вставьте в тело ВыполнитьПример() Экспорт.
Документ создаётся заново в памяти при каждом запуске. Существующие реквизиты, файлы и документы конфигурации не меняются.
Сообщения показывают контрольные проверки. Для визуального просмотра оформления используйте отдельную задачу с полным модулем учебной формы.
Документ = Новый ФорматированныйДокумент;
Первый = Документ.Добавить("Книга");
Первый.Текст = "Книга";
Первый.Шрифт = Новый Шрифт("Arial", 12, Истина);
Первый.ЦветТекста = Новый Цвет(30, 60, 90);
Первый.ЦветФона = Новый Цвет(245, 248, 250);
Первый.НавигационнаяСсылка = "";
Перевод = Документ.Добавить(Неопределено, Тип("ПереводСтрокиФорматированногоДокумента"));
Второй = Документ.Добавить("Ручка");
Параграф = Первый.Родитель;
Параграф.ТипПараграфа = ТипПараграфаФорматированногоДокумента.Обычный;
Сообщить(Перевод.Родитель = Параграф);
Сообщить(Второй.Родитель = Параграф);
Сообщить(Первый.НавигационнаяСсылка = "");
Сообщить(Документ.ПолучитьТекст(Первый.ЗакладкаНачала, Первый.ЗакладкаКонца) = "Книга");
Сообщить(Документ.ПолучитьПозициюПоЗакладке(Первый.ЗакладкаКонца) - Документ.ПолучитьПозициюПоЗакладке(Первый.ЗакладкаНачала) = 5);
Сообщить(Документ.ПолучитьПозициюПоЗакладке(Перевод.ЗакладкаКонца) > Документ.ПолучитьПозициюПоЗакладке(Перевод.ЗакладкаНачала));
Сообщить(Документ.ПолучитьТекст(Параграф.ЗакладкаНачала, Параграф.ЗакладкаКонца) = Документ.ПолучитьТекст());Разбор по шагам
Добавить возвращает созданный текстовый элемент. Оформление относится к нему, а выравнивание/тип списка — к его параграфу.
Параметр ТипЭлемента=ПереводСтрокиФорматированногоДокумента вставляет перевод строки внутри параграфа, не новый параграф.
Родитель у текста и перевода строки — ПараграфФорматированногоДокумента; он только для чтения.
Закладки ограничивают диапазон элемента. По ним извлекаем только Книга и сравниваем длину диапазона с пятью символами.
НавигационнаяСсылка установлена пустой: упражнение не создаёт переход к сайту или чужому объекту.
Как проверить результат
Все семь сравнений Истина: оба текста и перевод относятся к одному параграфу; диапазон первого текста содержит Книга.
В полном тексте есть перевод строки между названиями; новый параграф не создаётся.
Ожидаемый результат
Показана иерархия и реальные диапазоны текстовых элементов.
На что обратить внимание
Текстовое оформление не является заменой данных реквизитов/таблиц: здесь это только представление.
После структурного редактирования не считайте старые числовые позиции неизменными.
Не создавайте ссылку на произвольный внешний ресурс только ради демонстрации свойства.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.