Оптимизация макета отчета для вывода в формате HTML (конструктор отчетов Visual Studio)
В этом разделе описывается разбиение на страницы и расположение элементов отчетов в формате HTML, отображаемых с помощью серверного веб-элемента управления ReportViewer. Эта информация полезна для понимания представления отчета в формате HTML. Вывод в формате HTML пересоздается каждый раз при запуске отчета. Вывод в формате HTML определяется встроенным модулем подготовки отчета в формате HTML; в частности, этот модуль определяет позиционирование и стиль элементов отчета. Встроенные модули подготовки отчета в формате HTML настроить нельзя. Созданные ими теги HTML нельзя изменить. Нельзя также заменить существующие элементы формата другой реализацией.
Поддержка HTML
Отчеты в формате HTML 4.0 соответствуют спецификациям HTML 4.0 и Cascading Style Sheets версии 2 (CSS2) с некоторыми исключениями. Все документы HTML создаются в кодировке UTF-8.
Примечание. |
---|
В данном разделе упоминаются элементы отчета. Элементы отчета являются частью языка определения отчетов, предоставляющего формальное описание структуры отчета. Язык определения отчетов документирован в электронной документации по SQL Server 2005. |
Расположение элементов отчета
Чтобы вывести отчет в формате HTML, элемент управления создает таблицу в формате HTML, которая будет содержать элементы каждого набора элементов отчета. Элементы позиционируются в таблице, чтобы сохранить макет отчета. Если набор элементов отчета содержит только один элемент отчета, он подготавливается к просмотру без таблицы. Все положения и размеры элементов выражаются в миллиметрах (мм). Отклонения в размере и положении менее 0,2 мм при подготовке к просмотру рассматриваются как 0 мм.
HTML не поддерживает перекрытие элементов. Если один элемент отчета перекрывает другой, эти элементы располагаются в таком порядке, чтобы они не перекрывали друг друга. Это может привести к тому, что элементы размещаются на странице не в том порядке, который был задан при конструировании. В некоторых случаях может создаваться впечатление, что элементы не перекрываются в средстве проектирования, а на самом деле перекрытие имеет место. Свойства размера и положения элементов отчета показывают их фактическое расположение. Чтобы определить положение перекрывающихся элементов, модуль подготовки отчетов вначале рассматривает значение элемента Top, потом значение элемента Left, а затем значение ZIndex.
Разбиение на страницы
Модуль подготовки отчетов в формате HTML подготавливает к просмотру страницы как отдельные HTML-страницы, также называемые «разделами», следующим образом.
Разрывы страниц подготавливаются к просмотру, если в список с разрывом или непосредственно в текст отчета помещены следующие элементы.
Прямоугольники, у которых свойство PageBreakAtEnd или PageBreakAtStart имеет значение True.
Списки или группы списков, у которых свойство PageBreakAtEnd или PageBreakAtStart имеет значение True.
Таблицы или группы таблиц, у которых свойство PageBreakAtEnd или PageBreakAtStart имеет значение True. В таблице должен быть, по меньшей мере, один видимый столбец. Все родительские группы для группы таблиц должны быть видимыми.
Матрицы или группы строк, свойство PageBreakAtEnd или PageBreakAtStart которых имеет значение True.
Вложенные отчеты с любым из вышеперечисленных элементов.
Элементы, начинающиеся над элементом, содержащим разрыв страницы, появятся на этой странице перед ее разрывом.
Модуль подготовки отчетов в формате HTML попытается подготовить к просмотру все разрывы страниц в элементах так, как описано выше, однако два элемента с разрывами, размещенные рядом друг с другом на странице, могут привести к непредсказуемым результатам. Элементы с разрывами страниц, содержащиеся в таблице, матрице или прямоугольнике, также могут приводить к непредсказуемым результатам.
Любой элемент, помещенный после элемента с разрывом страницы, будет подготавливаться к просмотру на той же странице, если его верх находится выше нижнего края элемента с разрывом страницы. Например, текстовое поле, помещенное непосредственно справа от таблицы, имеющей в конце разрыв страницы, появится на той же странице, что и таблица. Текстовое поле, помещенное справа и ниже нижнего края той же таблицы, появится на следующей странице.
Модуль подготовки отчетов в формате HTML также вставляет разрывы страницы по примерной высоте страницы, заданной в свойствах отчета. Это в первую очередь позволяет избежать формирования очень крупных HTML-страниц при подготовке к просмотру больших отчетов без разрывов страниц.
Стиль
Элементы стиля подготавливаются к просмотру как стили CSS для HTML 4.0. В HTML 4.0 для каждого элемента отчета подготавливается один стиль CSS. Названия стилей уникальны внутри отчетов и вложенных отчетов. В следующей таблице показано, как атрибуты стиля языка определения отчетов соответствуют стилям HTML.
Стиль языка определения отчетов | Описание | HTML 4.0 |
---|---|---|
BorderColor |
Цвет границ. |
border |
BorderStyle |
Стиль границ. |
border |
BorderWidth |
Ширина границ. |
border |
BackgroundColor |
Цвет фона. |
background-color |
BackgroundImage |
URL-адрес фонового изображения. |
background-image |
BackgroundRepeat |
Повторяющийся шаблон фонового изображения. |
background-repeat |
FontStyle |
Стиль шрифта (обычный, курсив). |
font-style |
FontSize |
Размер шрифта. |
font-family |
FontWeight |
Начертание шрифта. |
font-weight |
TextDecoration |
Оформление текста (подчеркивание, перечеркивание). |
text-decoration |
TextAlign |
Горизонтальное выравнивание текста. |
text-align |
VerticalAlign |
Вертикальное выравнивание текста. |
vertical-align |
Color |
Цвет текста. |
color |
PaddingLeft |
Величина заполнения между левой границей и текстом. |
padding-left |
PaddingRight |
Величина заполнения между правой границей и текстом. |
padding-right |
PaddingTop |
Величина заполнения между верхней границей и текстом. |
padding-top |
PaddingBottom |
Величина заполнения между нижней границей и текстом. |
padding-bottom |
LineHeight |
Высота строк текста. |
Line-height |
Direction |
Справа налево или слева направо. |
Атрибут DIR |
Language |
Язык текста. |
Атрибут LANG |
UnicodeBiDi |
Переопределение двунаправленного алгоритма. |
unicode-bidi |
Примечание. |
---|
Границы с типом границы Double и шириной границы, меньшей, чем 2 pt, отображаются модулем подготовки отчетов в формате HTML как одинарные линии. Для отображения обеих линий границы со стилем границы Double должны обладать шириной не меньше 2 pt. |
См. также
Понятия
Настройка ReportViewer для удаленной обработки
Создание клиентских RDLC-файлов
Серверный веб-элемент управления ReportViewer и соответствующий элемент управления Windows Forms