Перейти к содержанию

Форматированный текст: различия между версиями

Материал из Химсофт Вики
Нет описания правки
 
(не показано 11 промежуточных версий этого же участника)
Строка 1: Строка 1:
<div style="background-color: #fff0f3; border-left: 5px solid #dc3545; padding: 15px; margin: 10px 0; color: #a71d2a;">
Этот объект позволяет отображать форматированный текст в формате <code>RTF</code>. Он выглядит следующим образом:
<b>Внимание!</b><br/>
Это описание - для старой версии дизайнера документов (<b><i>AR</i></b>).<br/>
В ближайшее время страница будет обновлена на описание настройки в <b><i>FastReports</i></b>.
</div>


'''Форматированный текст''' (<code>FormattedText</code>) - элемент отображения текстовых данных с форматированием.
[[Файл: rtf_obj_1.png|center|border|400px]]


==Общие сведения==
'''''Примечания:'''''
*может выполнять операции слияния данных;
*''По возможности старайтесь обходиться объектом <code>Текст</code> для отображения текста. При экспорте отчета в другие форматы объект <code>Форматированный текст</code> экспортируется в виде картинки.''
*может отображать форматированный текст в формате HTML (например – при отображении формул или единиц измерения, содержащих надстрочные и/или подстрочные символы).
*''Объект поддерживает только сплошной тип заливки. Градиентные и прочие заливки не поддерживаются.''


==Ввод текста==
==Редактирование текста==
*выбрать у элемента <code>FormattedText</code> свойство <code>Data >> Html</code>;
Для редактирования текста сделайте двойной щелчок на объекте:
[[Файл:Formatted.png|center]]
*вызвать с помощью пункта <code>Expression…</code> (рис. 6.1) окно <code>Expression Editor</code>;
[[Файл:Formatted2.png|center]]
*ввести HTML-код в поле <code>Expression:</code>.


==Особенности==
[[Файл: rtf_obj_2.png|center|border]]
*элемент FormattedText отображает введенный HTML-текст с применённым форматированием (итоговый вариант можно увидеть в режиме предварительного просмотра <code>Preview</code>;
*весь текст, написанный в свойстве Html, должен быть заключен в тег <code><body></body></code>;
*в поле ввода текста «Expression:» возможно использование почти все HTML-теги и атрибуты из спецификации XHTML 1.1 (подробнее см. https://www.w3.org/TR/xhtml11/) с некоторыми расширениями для частичной поддержки спецификации HTML5 (подробнее см. https://www.w3.org/TR/2011/WD-html5-20110405/);
*элемент управления <code>FormattedText</code> поддерживает многие (но не все) стили CSS;
*при использовании допустимых HTML-тегов, которые не поддерживаются дизайнером, они будут игнорироваться.


==Индексы (надстрочные и подстрочные)==  
==Использование пакета Microsoft Word==  
Вы также можете использовать пакет <code>Microsoft Word</code> для создания текста:
*создайте текст;
*сохраните его в формате <code>RTF</code>;
*вызовите редактор объекта;
*нажмите кнопку [[Файл: rtf_open_btn.png|border]], чтобы загрузить текст из файла <code>RTF</code>.


===Управление вертикальным смещением===
'''''Примечание:''' объект поддерживает далеко не все возможности <code>Microsoft Word</code>.''
В CSS стандартные свойства <code>vertical-align:</code> для <code>sup</code> и <code>sub</code> имеют фиксированные алгоритмы смещения.  


Использование пунктов (pt) или пикселей (px) позволяет тонко настроить положение:
==Подключение к базам данных==
*<code>vertical-align: 2pt;</code> — положительное значение поднимает <code>sup</code> (надстрочный индекс) выше базовой линии; чем больше число, тем больше «отрыв» от текста;
Подключить объект к данным из поля БД можно двумя способами:
*<code>vertical-align: -1pt;</code> — отрицательное значение опускает <code>sub</code> (подстрочный индекс); это критично для предотвращения наложения индекса на выносные элементы букв (например, у буквы «р» или «у»).
*в текст объекта можно вставлять выражения - они обрабатываются таким же образом, как и в объекте <code>Текст</code>; вставьте ссылку на поле в текст объекта;
*используйте свойство <code>DataColumn</code>, чтобы напечатать содержимое поля базы данных целиком.


===Изменение размера индексов===
==Свойства объекта==
По умолчанию браузеры уменьшают индексы до ~75% от размера родителя.
*<code>font-size: 7px;</code> — жесткое задание размера (в данном случае относительно основного текста в 9px) делает формулы и единицы измерения более читаемыми и аккуратными;
*для лучшей адаптивности можно использовать проценты (например, <code>font-size: 75%</code>) или единицы <code>em</code>.


===Влияние на межстрочный интервал (Line-height)===
Объект имеет следующие свойства:
Одной из главных проблем индексов является «раздвигание» строк.
{|class="wikitable" style="margin:auto; background-color: #fff;"
 
|-
Свойство <code>line-height: 1.2;</code> в сочетании с явным указанием <code>vertical-align</code> для индексов помогает сохранить ритм вертикальной сетки.
!Свойство
 
!Описание
Если индексы сильно смещены, они могут увеличить высоту отдельной строки, что визуально портит блок текста.  
|-
 
|<code>AllowExpressions</code><br>'''''Выражения в тексте'''''
Для решения этой проблемы индексам часто добавляют <code>line-height: 0;</code>.
|Возможность отключать обработку выражений в тексте объекта. По умолчанию включено.
 
|-
===Пример использования===
|<code>Brackets</code><br>'''''Скобки'''''
<syntaxhighlight lang="html">
|Пара символов, которые используются для обозначения выражений в тексте объекта.
<style>
|-
body {font-family: 'Times New Roman', Times, serif; font-size: 9px; line-height: 1.2;}
|<code>DataColumn</code><br>'''''Поле данных'''''
sup {vertical-align: 2pt; font-size: 7px;}
|Поле данных, из которого загружается текст объекта.
sub {vertical-align: -1pt; font-size: 7px;}
|-
</style>  
|<code>Text</code><br>'''''Текст'''''
<body>  
|Текст объекта в формате RTF.
Fields!unit.Value
|-
</body>
|<code>Padding</code><br>'''''Отступы'''''
</syntaxhighlight>
|Отступы текста от краев объекта, измеряемые в пикселах.
 
|-
[[Category:Внутренняя документация]]
|}
[[Category:Тритея]]
[[Category:Дизайнер_документов]]

Текущая версия от 07:34, 15 октября 2026

Этот объект позволяет отображать форматированный текст в формате RTF. Он выглядит следующим образом:

Примечания:

  • По возможности старайтесь обходиться объектом Текст для отображения текста. При экспорте отчета в другие форматы объект Форматированный текст экспортируется в виде картинки.
  • Объект поддерживает только сплошной тип заливки. Градиентные и прочие заливки не поддерживаются.

Редактирование текста

Для редактирования текста сделайте двойной щелчок на объекте:

Использование пакета Microsoft Word

Вы также можете использовать пакет Microsoft Word для создания текста:

  • создайте текст;
  • сохраните его в формате RTF;
  • вызовите редактор объекта;
  • нажмите кнопку , чтобы загрузить текст из файла RTF.

Примечание: объект поддерживает далеко не все возможности Microsoft Word.

Подключение к базам данных

Подключить объект к данным из поля БД можно двумя способами:

  • в текст объекта можно вставлять выражения - они обрабатываются таким же образом, как и в объекте Текст; вставьте ссылку на поле в текст объекта;
  • используйте свойство DataColumn, чтобы напечатать содержимое поля базы данных целиком.

Свойства объекта

Объект имеет следующие свойства:

Свойство Описание
AllowExpressions
Выражения в тексте
Возможность отключать обработку выражений в тексте объекта. По умолчанию включено.
Brackets
Скобки
Пара символов, которые используются для обозначения выражений в тексте объекта.
DataColumn
Поле данных
Поле данных, из которого загружается текст объекта.
Text
Текст
Текст объекта в формате RTF.
Padding
Отступы
Отступы текста от краев объекта, измеряемые в пикселах.