Table of Contents

Class ReportHtmlRenderer

Namespace
DocWright.Reporting.Viewer
Assembly
DocWright.Reporting.Viewer.dll

Projects a paginated report to HTML with inline SVG, plus the region map a viewer binds to.

public static class ReportHtmlRenderer
Inheritance
ReportHtmlRenderer
Inherited Members

Remarks

What is drawn with what, and why. An item's box, background and borders are HTML elements, because a positioned box is what the box model is exact at. Text and every self-drawing item — a chart, a gauge, a barcode — are SVG, because SVG places a baseline where it is told to and HTML does not: a browser puts an inline box's baseline where the font it substituted says, so an HTML projection of positioned text drifts from the PDF by a different amount on every machine. <text y> is defined to be the baseline, so the two agree by construction.

Order. Elements are written in the order the PDF lowering emits primitives — background, content, children, borders, link — and every element carries page coordinates, so the markup's document order is its stacking order and matches the PDF's painting order. The one deliberate difference is that a border is a positioned element of its own rather than a CSS border: a CSS border is drawn inside or outside its box, and the report's is centred on the edge, like the rule the PDF draws.

Methods

Project(ReportPageModel)

Projects a paginated report with the default options.

Project(ReportPageModel, ReportHtmlOptions?)

Projects a paginated report.