When you build the page yourself, you can output the viewer's scripts and body separately so they fit your HTML layout.

Viewer setup. Configure the viewer, load the report, assign it to the component, and process the requests or events raised by the UI.
<head>
    <?php $viewer->javascript->renderHtml(); ?>
</head>
<body>
    <?php $viewer->renderHtml(); ?>
</body>


javascript->renderHtml() emits the required scripts (placed in the head), while renderHtml() emits the viewer element itself. This gives you full control over where the viewer sits in your own template.

Hi. Need any help?