# Print in Js Viewer

JSViewer provides several options for printing a report. This topic describes several ways in which a report can be printed - with preview, without preview, preview report and print to PDF, or print to PDF.

## Content



Js Viewer provides several options for printing a report. This topic describes several ways in which a report can be printed in Js Viewer.

### Print with Preview

Print report when the report is completely loaded in the viewer, using **print()** method.

```html
var viewer;
function loadViewer() {
    viewer = GrapeCity.ActiveReports.JSViewer.create({
        element: '#viewerContainer',
        reportID: 'Report.rdlx',
        documentLoaded: () => viewer.print()
    });
}
```

### Print without Preview

Print report without previewing using 'global' **print()** method. This is same as the default button in Js Viewer, but without showing report preview.

```html
GrapeCity.ActiveReports.JSViewer.print({ reportID:'Report.rdlx'});
```

### Preview Report and Print to PDF

Open the report and export it to PDF with **PrintOnOpen** parameter set to 'true'. In this case, the exported PDF opens in new window of the browser, and the print dialog is displayed.

```html
var viewer;
function loadViewer() {
    viewer = GrapeCity.ActiveReports.JSViewer.create({
        element: '#viewerContainer',
        reportID: 'Report.rdlx',
        documentLoaded: () => viewer.export('Pdf', null, true, { PrintOnOpen: 'true' })
    });
}
```

### Print to PDF

Export the report to PDF using 'global' **export()** method and enable the **PrintOnOpen** option. In this case, the report is not opened.

```html
GrapeCity.ActiveReports.JSViewer.export({
    reportID: 'Report.rdlx', exportType: 'Pdf', settings: { PrintOnOpen: 'true' },
    callback: (args) => { window.open(args) }
})
```


> type=note
> **Note**:
> 
> *   For Section Reports, use **OnlyForPrint** instead of **PrintOnOpen** (for backward compatibility). For Page and RDLX reports (.rdlx), anyone of PrintOnOpen or OnlyForPrint can be used.
> *   Use latest versions of Chrome, Firefox, and Chrome-based Edge for the described print features to work correctly.

## See Also

[Js Viewer API](/activereportsnet/docs/v19.1/developers/create-applications/js-viewer-application/jsviewer-api)
