Currently, if a PDFViewer is opened on a mobile device and we use two fingers to zoom its content, the file is zoomed but the more we zoom it, the blurrier its content becomes. The reason for this is the fact that when we use "pinch-zoom" to zoom the PDF file(in a PDFViewer) it is zoomed using the browser's zoom functionality and not the functionality provided by the PDFViewer component.
It will be a very useful feature if the built-in PDFViewer zoom functionality is used when the user zooms content with two fingers, on a mobile device
Provide editable AcroForms support in PDFViewer.
The current implementation of the Kendo PDFViewer depends on pdf.js, so the following should be taken into account:
When a PDF file that contains PNG images is loaded in the PDFViewer that uses DPL, the PNG files are not displayed in the viewer.
An empty file loads in the PDFViewer while the loaded PDF file contains the logo of the Firefox browser.
The PDFViewer should display the Firefox logo loaded in the PDF file.
I have a screen that I'm manually calling the print functionality of the kendo-pdfviewer from a button click. It is working, but the problem is that the resulting print dialog window is really small. Even if I open the print dialog, resize the dialog, and then try to print again it gets reset to the original small size. This is preventing our users from previewing what the resulting page will print like.
This is the code for my pdf viewer
<div class="row">
<div class="col">
<div id="example">
<kendo-pdfviewer name="pdfviewer" height="300">
<pdfjs-processing file="@(Url.Page("/Badges/Details", "VisitorBadge", new { BadgeId = @Model.Id }))" />
<toolbar enabled="false">
<pdfviewer-toolbar-items>
<pdfviewer-toolbar-item command="PrintCommand" type="button" name="print" icon="print"></pdfviewer-toolbar-item>
</pdfviewer-toolbar-items>
</toolbar>
</kendo-pdfviewer>
</div>
<style>
html body #pdfviewer {
width: 100% !important;
}
</style>
</div>
</div>
This is the javascript used to open the print dialog
badgereport.onWindowOpen = function () {
$pdfviewer = $("#pdfviewer").data("kendoPDFViewer");
$printBadgePdf = $("#printBadgePdf");
$closeBadgePdf = $("#closeBadgePdf");
$badgeWindow = $("#badgeWindow").data("kendoWindow");
$printBadgePdf.on("click", function (e) {
e.preventDefault();
$pdfviewer.execute({ command: "PrintCommand" });
});
$closeBadgePdf.on("click", function (e) {
e.preventDefault();
$badgeWindow.close();
});
};
Is it possible to add an option similar to the Data() method that can be used to pass additional parameters to the remote endpoint through the Read request of the PDFViewer?
For example:
@(Html.Kendo().PDFViewer().Name("pdfviewer")
.DplProcessing(dpl => {
dpl.Read(r => r.Url(Url.Action("GetInitialPdf", "PdfViewer")).Data("additionalParams"));
...
})
)
<script>
function additionalParams() {
return {
param1: "test"
}
}
</script>