Skip to content

ViewerController

Framework-neutral viewer logic: generation, navigation, zoom, export and print. The React and Vue viewers are thin views over this controller.

new ViewerController(options?): ViewerController;
Parameter Type
options ViewerControllerOptions

ViewerController

downloadExcel(fileName?): Promise<void>;
Parameter Type
fileName? string

Promise<void>


downloadPdf(fileName?): Promise<void>;
Parameter Type
fileName? string

Promise<void>


exportExcel(options?): Promise<Uint8Array<ArrayBufferLike>>;
Parameter Type
options? ExcelExportOptions

Promise<Uint8Array<ArrayBufferLike>>


exportPdf(options?): Promise<Uint8Array<ArrayBufferLike>>;
Parameter Type
options? PdfExportOptions

Promise<Uint8Array<ArrayBufferLike>>


firstPage(): void;

void


getState(): ViewerState;

ViewerState


goToPage(index): void;
Parameter Type
index number

void


lastPage(): void;

void


load(
template,
data,
options?
): LayoutDocument | null;

Generates the report. Errors are stored in state.error, never thrown.

Parameter Type
template string | ReportTemplate
data unknown
options? ViewerControllerOptions

LayoutDocument | null


nextPage(): void;

void


previousPage(): void;

void


print(): Promise<void>;

Prints every page through a hidden iframe. Browser only.

Promise<void>


regenerate(): LayoutDocument | null;

Regenerates from the last loaded template and data (e.g. after changing params).

LayoutDocument | null


setContainerSize(width, height): void;

Call when the viewer’s scroll container is resized; fit modes recompute the zoom.

Parameter Type
width number
height number

void


setOptions(options): void;

Updates generate/export options without regenerating.

Parameter Type
options ViewerControllerOptions

void


setZoom(zoom): void;
Parameter Type
zoom number

void


setZoomMode(mode): void;
Parameter Type
mode ZoomMode

void


show(document): void;

Shows an already generated layout document.

Parameter Type
document LayoutDocument

void


subscribe(listener): () => void;
Parameter Type
listener Listener

() => void


zoomIn(): void;

void


zoomOut(): void;

void