Поделиться через


Форматирование текста и импорт HTML

Текстовое поле может представлять собой элемент отчета или отдельную ячейку в области данных, которая содержит текст, вычисляемое поле, указатель на поле в базе данных или сочетание всех этих трех элементов. Предусмотрена возможность смешивать шрифты и цвета, добавлять полужирный и курсивный стили и использовать такие стили абзаца, как выравнивание и выступы. Можно форматировать все текстовое поле или конкретный текст, числа, выражения или поля в текстовом поле.

Для повышения удобства чтения отчета можно применять всевозможные шрифты, размеры, цвета и эффекты. Шрифт, начертание шрифта, размер шрифта и эффекты подчеркивания можно задавать для текста в текстовом поле или в области данных. По умолчанию используемым шрифтом отчета является Arial с размером 10 пунктов и черным цветом. С использованием диалогового окна Свойства текстового поля можно указать, как отображается текст при подготовке отчета к просмотру.

Если в текстовом поле определено простое или сложное выражение, то результирующее представление пользовательского интерфейса этого выражения принято называть местозаполнителем. Можно определять цвета, шрифты, действия и другие правила поведения применительно к любому количеству местозаполнителей или разделов текста в одном текстовом поле.

Создание текста местозаполнителя в текстовом поле

Значение местозаполнителя всегда представляет собой простое или сложное выражение. Можно добавить местозаполнитель к текстовому полю, создавая выражение с помощью одного из следующих методов.

  • Перетащите поле из области Данные отчета и поместите его в текстовое поле. Если будет выполнено перетаскивание этого выражения в какое-то другое место в тексте отчета, то появится новое текстовое поле, содержащее местозаполнитель. Значением этого местозаполнителя становится выражение поля, соответствующее полю, применительно к которому было выполнено перетаскивание.

  • Щелкните правой кнопкой мыши в любом месте этого текстового поля и выберите элемент Создать местозаполнитель. В диалоговом окне Свойства местозаполнителя можно указать выражение в качестве значения местозаполнителя. Дополнительные сведения см. в разделе Диалоговое окно «Свойства местозаполнителя» — «Общие».

  • Введите любое простое или сложное выражение в текстовое поле. Например, если будет введено выражение Name: [Name] в текстовое поле, то в качестве местозаполнителя будет показан текст [Name], который представляет выражение =Fields!Name.Value. Дополнительные сведения о типах отображаемого текста, поддерживаемого для выражений, см. в разделе Основные сведения о простых и сложных выражениях (службы Reporting Services).

  • Введите выражение в пустом текстовом поле, начиная со знака равенства (=). После перевода фокуса с этого текстового поля результирующее выражение преобразуется в местозаполнитель, который можно изменять. Если текстовое поле не пусто или знак равенства вставлен где-то в другом месте, но не в качестве первого символа в текстовом поле, то знак равенства рассматривается как строковый литерал и местозаполнитель не создается. Дополнительные сведения об определении простых и сложных выражений см. в разделе Использование выражений (службы Reporting Services).

Форматирование местозаполнителей и статического текста в текстовом поле

Предусмотрена возможность форматировать местозаполнители с использованием диалогового окна Свойства местозаполнителя. Можно форматировать только весь местозаполнитель, а не его разделы. Если потребуется увидеть базовое выражение, то можно приостановить указатель мыши над местозаполнителем. Можно изменить базовое выражение, дважды щелкнув местозаполнитель или щелкнув правой кнопкой мыши местозаполнитель и выбрав элемент Свойства местозаполнителя. Можно также задать метку пользовательского интерфейса с использованием свойства Метка в области Общие диалогового окна Свойства местозаполнителя. Она будет представлять собой текст, который отображается во время разработки для местозаполнителя.

В отличие от текста местозаполнителя, в текстовом поле конкретные фрагменты текста можно выравнивать отдельно, использовать несколько абзацев в одном текстовом поле и определять другие правила поведения для любого подмножества текста.

Предусмотрена возможность определять цвета, шрифты, действия и другие правила поведения для любого подмножества текста в одном и том же текстовом поле, чтобы создать слияние почты или шаблон для текста в отчете. Можно также использовать несколько абзацев в одном текстовом поле. Например, при наличии двух отдельных абзацев текста можно отделить эти абзацы, нажав клавишу ВВОД в текстовом поле. Можно также задать значение выравнивания для любой отдельной строки текста. Кроме того, можно определить действие для отдельного фрагмента текста в текстовом поле. Это может оказаться удобным, если потребуется добавить гиперссылку для строки текста, которая содержится в текстовом поле.

ПримечаниеПримечание

Действия, определенные по отношению к текстовому полю, имеют более высокий приоритет по сравнению с действиями, определенными для отдельного фрагмента текста в текстовом поле.

Дополнительные сведения о смешанном форматировании см. в разделе Как форматировать текст в текстовом поле.

Импорт HTML в текстовое поле

Элемент отчета текстового поля позволяет вставить текст в формате HTML, выбранный из поля набора данных в отчет. Этот текст может исходить из любого простого или сложного выражения, обработка которого приводит к получению правильно отформатированного кода HTML. Отформатированный текст может быть подготовлен к просмотру в любом поддерживаемом формате вывода, включая PDF.

ПримечаниеПримечание

При импорте текста, содержащего разметку HTML, полученные данные всегда должны быть вначале подвергнуты синтаксическому анализу с помощью текстового поля. Поддерживается только подмножество тегов HTML, поэтому код HTML, отображаемый в подготовленном к просмотру отчете, может отличаться от исходного кода HTML.

Ниже приведен полный список тегов, которые подготавливаются к просмотру в формате HTML, если они определены в качестве текста местозаполнителя.

  • Гиперссылки: <A href>

  • Шрифты: <FONT>

  • Элементы заголовка, стиля и блока: <H{n}>, <DIV>, <SPAN>,<P>, <DIV>, <LI>, <HN>

  • Форматирование текста: <B>, <I>, <U>, <S>

  • Работа со списком: <OL>, <UL>, <LI>

Все прочие теги разметки HTML во время обработки отчета пропускаются. Если код HTML, представленный с помощью выражения в тексте местозаполнителя, не имеет правильного формата, то местозаполнитель подготавливается к просмотру в виде обычного текста. Все теги HTML рассматриваются без учета регистра.

Если текст в текстовом поле содержит только один блок текста, то любой код HTML в местозаполнителе, который определяет элементы блока, подготавливается к просмотру правильно. Но если текстовое поле имеет несколько блоков текста, то теги HTML пропускаются и структура текста определяется блоками текста.

Если для текста будет определен больше чем один тег и в Reporting Services обнаружится конфликт между кодом HTML и существующими ограничениями отчета, то в качестве кода HTML будет рассматриваться только самый внутренний тег HTML.

Дополнительные сведения см. в разделе Как добавить HTML в отчет.

Ограничения атрибутов каскадной таблицы стилей

При использовании атрибутов каскадной таблицы стилей (CSS) определяется только основной набор тегов. Ниже приведен список поддерживаемых атрибутов:

  • text-align, text-indent;

  • font-family, font-size;

  • color;

  • padding, padding-bottom, padding-top, padding-right, padding-left;

  • font-weight.

Ниже приведены некоторые рекомендации по использованию CSS.

  • Значения CSS неправильного формата пропускаются так же, как код HTML неправильного формата.

  • Если в том же самом теге существуют и атрибут, и атрибуты стиля CSS, то свойство CSS имеет более высокий приоритет. Например, если текстом является <p style="text-align: right" align="left">, то применяется только атрибут text-align.

  • Применительно к атрибутам и стилям CSS, если свойство задано больше одного раза, применяется только последний экземпляр свойства. Например, если текстом является <p align="left" align="right">, то текст выравнивается по правому краю.

Выравнивание горизонтального текста с использованием общих свойств

В поле Выравнивание в диалоговом окне Свойства текстового поля можно указать, как должен выравниваться текст по горизонтали. Если значение для выравнивания не задано, то применяется выравнивание, определяемое значением По умолчанию. Это означает, что текст выравнивается с учетом типа поля применяемого значения местозаполнителя. Если задано выражение, вычисление которого приводит к получению нестрокового значения, то текст выравнивается вправо. Если вычисление выражения приводит к получению строкового значения, то текст выравнивается влево.