共用方式為


最佳化 HTML 輸出的報表配置 (Visual Studio 報表設計工具)

這個主題描述 ReportViewer Web 伺服器控制項所顯示的 HTML 報表之報表項目的分頁和定位。如果您要了解報表的 HTML 呈現方式,這項資訊非常有用。您每次執行報表時,都會重新產生 HTML 輸出。內建的轉譯延伸模組會決定 HTML 輸出,其中包括報表項目的定位和樣式。內建的 HTML 轉譯延伸模組無法自訂。您無法變更它產生的 HTML 標示,或利用不同的實作來取代現有的格式元素。

HTML 支援

除了某些例外狀況,HTML 4.0 報表符合 HTML 4.0 和階層式樣式表層級 2 (CSS2) 規格。所有 HTML 都是利用 UTF-8 編碼來產生的。

Note附註

這個主題參考報表的元素。報表元素是報表定義語言 (RDL) 的一部份,報表定義語言提供了報表結構的正式描述。SQL Server 2005 線上叢書有 RDL 的說明。

項目定位

為了輸出 HTML 報表,控制項會用 HTML 來建立一份資料表,將項目包含在各組報表項目中。項目會放在資料表內,保留報表的配置。如果一組報表項目只包含單一報表項目,就會轉譯報表項目,但不含資料表。所有位置和項目大小都是用公釐 (mm) 來表示。小於 0.2 mm 的大小和位置差異,在轉譯時,會視為 0 mm。

HTML 不支援重疊項目。如果報表項目與另一個項目重疊,就會將項目安排成不重疊。這可能使項目在頁面中出現的位置不同於設計的位置。在某些情況下,項目在設計工具中看起來並未重疊,但事實上卻會重疊。報表項目的大小和位置屬性會顯示它們真正的位置。為了判斷重疊項目的位置,轉譯延伸模組會先考慮項目的 Top 元素值,接著考慮 Left 元素值,然後再考慮 ZIndex 的值。

分頁

HTML 轉譯延伸模組會依照下列方式,將頁面轉譯成個別的 HTML 頁面,也稱為「區段」:

  • 當下列項目放在含有分頁符號的清單內時,或直接放在報表主體內,便會轉譯分頁符號:

    • PageBreakAtEndPageBreakAtStart 設為 True 的矩形。

    • PageBreakAtEndPageBreakAtStart 設為 True 的清單或清單群組。

    • PageBreakAtEndPageBreakAtStart 設為 True 的資料表或資料表群組。資料表至少必須有一個可見的資料行。資料表群組的所有父群組都必須可見。

    • PageBreakAtEndPageBreakAtStart 設為 True 的矩陣或資料列群組。

    • 含有任何上述項目的子報表。

  • 在含有分頁符號的項目之上開始的項目,在頁面中會出現在分頁符號前面。

HTML 轉譯延伸模組會試圖依照先前的描述來轉譯項目中的所有分頁符號;不過,分頁符號在頁面中彼此相鄰的兩個項目,可能會產生非預期的結果。含有分頁符號的項目以及包含在資料表、矩陣或矩形內的項目,也可能產生非預期的結果。

任何放在含分頁符號之項目旁的項目,如果它的頂端在含分頁符號之項目的底端之上,便會將它們轉譯在相同頁面中。例如,直接放在資料表底端含分頁符號的資料表右側文字方塊,會與資料表出現在相同頁面中。放在相同資料表右側和底端以下的文字方塊,則會出現在下一頁。

另外,HTML 轉譯延伸模組也會依照報表屬性所定義,將分頁符號插在頁面的大約高度上。這主要是防止不含分頁符號的大型報表在轉譯時,產生超大型 HTML 頁面。

樣式

樣式元素會轉譯成 HTML 4.0 的 CSS 樣式。對 HTML 4.0 而言,每個報表項目都會轉譯一個單一 CSS 樣式。這些樣式的名稱跨各報表和子報表都是唯一的。下表指出 RDL 樣式屬性如何對應到 HTML 樣式。

RDL 樣式 描述 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

Note附註

框線樣式是 Double 且框線寬度小於 2 pt 的框線,HTML 轉譯延伸模組會將它轉譯成單一線條。框線樣式是 Double 的框線,框線寬度至少必須是 2 pt,才能顯示雙線。

另請參閱

概念

設定 ReportViewer 的遠端處理
建立用戶端報表定義檔案 (.rdlc)
ReportViewer Web 伺服器和 Windows Form 控制項