After clicking the Print button, the pages are ordered incorrectly. Can be seen in the preview window.
Steps to reproduce:
1. Open https://demos.telerik.com/blazor-ui/pdfviewer/overview
2. Click the Print button
When the user scrolls the PDF Viewer down and then opens another PDF file, the new document should display on the first page. Currently, the new file displays scrolled to the page from the previous file and the user must scroll to the top manually.
===
A possible workaround is to scroll the PDF file with JavaScript in the PDF Viewer OnOpen event:
@inject IJSRuntime js
<TelerikPdfViewer Data="@PdfSource"
Height="600px"
OnOpen="@OnPdfViewerOpen"
Class="@PdfViewerClass">
</TelerikPdfViewer>
<script suppress-error="BL9992">
function scrollPdfToTop(selector) {
var pdfCanvas = document.querySelector(selector);
if (pdfCanvas) {
pdfCanvas.scrollTop = 0;
}
}
</script>
@code {
private byte[]? PdfSource { get; set; }
private string PdfViewerClass { get; set; } = "scrollable-pdf-viewer";
private async Task OnPdfViewerOpen()
{
await js.InvokeVoidAsync("scrollPdfToTop", $".{PdfViewerClass} .k-pdf-viewer-canvas");
}
}
If the PdfViewer is initialized with a default document, the display performance of this document will be a lot worse, compared to PDF documents that are loaded programmatically after the component is already on the web page.
Open the PDF Viewer component online demo and click the download button:
Expected - the PDF must be downloaded.
Current - the file is not downloaded.