Last Updated: 11 Feb 2019 12:59 by ADMIN
Created on: 18 Jan 2019 16:42
Category: PdfViewer
Type: Feature Request
Suggestions for the new PdfViewerViewer
A great first effort! Many thanks!
After some use I do have these suggestions:

1. When User changes LayoutMode the ZoomLevel property changed event should also be fired. I have a Numeric Textbox to adjust viewer ZoomLevel and would like to see its text update on a LayoutMode change. However when LayoutModeChanged fires the ZoomLevel has not yet changed nor does ZoomLevelChanged later fire.
2. The toolbar item for Fit to Width should be a Toggle in all cases, i.e. toggling between Fit Width and Fit Height (or Fit Page) and should be effective at all times (sometimes has no effect if LayoutMode changed to Single Page).
3. The toolbar item to toggle LayoutMode should honor an assignment of its text property.
4. I'm currently using the change in VisiblePagesCount to determine the document is visible. However a "Loaded" event might be even better.
5. I would like to release the viewer's memory of the document before closing the XAML page. An Unload command would be helpful. For now I just assign Source = null.
Posted on: 11 Feb 2019 12:59
Hi David,

We have reviewed your points regarding the PdfViewer control and the comments are listed as follow:

1) LayoutMode and ZoomLevel property - We have further investigate this scenario and I have logged an issue in our Feedback portal on your behalf and you could follow the item on the link below:

2) FitToWidthCommand toggle in all cases -  it seems that you want the FitToWidth command to behave in a manner it was not designed to. We intended the FitToWidth to be a stateless operation, as opposed to a mode you switch to. We intended the command to work in the same way regardless of the layout mode. In essence, a more precise name for this command is FitDocumentToWidthCommand. So, as a result, what it does is that it would lookup the widest of all pages and set a zoom level so that this page is fit to width. As a side effect, when you are currently viewing a page that is not the widest, this page will not occupy the whole horizontal space. We do see value in having a complementary fit-page-to-width functionality. I have logged a feature request on your behalf and you could follow and vote for the item on the following link:

Regarding to the fit-to-height functionality - We do not see much value in having it as most pages have a larger height than width. If a user fits a page to its height, then empty space would be left on the screen and the text (the content) may be a bit harder to read. Also, you can easily implement a custom toolbar item that executes custom fit-to-height code. 

We did not intend the fit to width command to be a mode where the PdfViewer will change the zoom level based on the current page, i.e. upon the user scrolling (in continuous mode) or upon the user changing pages (navigating in single page mode).

We also see value in having a fit-page-to-width-mode, where if in this mode, the zoom level will be changed upon the user changing the current page (via scrolling or navigating). I have logged another feature request on yoour behalf and the link is as follow:

We can approve the two aforementioned feature requests if that is part of your proposal, namely a fit-page-to-width functionality and fit-page-to-width-mode functionality. If you have a different idea in mind and we did not fully understand it, could you please explain in more details.

3) LayoutMode and ToggleLayoutModeCommand - The text of the layout mode toolbar item looks like an icon. The icon represents the mode you will switch to when you click it. So, when you are in a continuous scroll mode, the icon will look like a single page, because if you click it, you will switch to a single page mode. You can easily change this by setting the SinglePageText and ContinuousScrollText properties of the toolbar item to icons of your choosing. So could you please elaborate more what you mean in the point 3?

4) Regarding to the Loaded event. We have a feature request to expose a DocumentLoadedEvent in our Feedback portal. You could follow the item and vote for it on the link below:

5) Viewer's Memory - In general you do not have to do anything extra in order to free this memory. When the page is unloaded, the RadPdfViewer instance should be ready for GC, because there is nothing referencing it anymore. Its Source should also be ready for GC as the only reference is from the PdfViewer. In this case, setting the Source to null has no effect on the memory footprint as the DocumentSource is the one that contains the imported file's information. 

I have also updated your Telerik points as a small sign for bringing this to our attention. As the items are logged separately in the feedback portal I will change the status of this Feature request to Declined

Progress Telerik
Posted on: 24 Jan 2019 05:22
Hello David,

Thank you for your feedback about the new PdfViewer control. 

We will have this points in mind when planning the next features of the control. I will set the status for this Feature Request to "Under Review". In a meantime, if you have any other suggestions please share them with us.

Progress Telerik
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items