A memory leak occurs in the RadTreeView control used for the table of contents in the RadPdfViewerNavigationPane, when changing the DocumentSource of RadPdfViewer at runtime.
To work this around, you can get the RadTreeView used by RadPdfViewerNavigationPane and manually clear its internal item storage before assigning the new DocumentSource.
private void ReloadDocument()
{
var navigationPane = this.pdfViewerNavigationPane;
var navigationPaneTreeView = navigationPane.FindChildByType<RadTreeView>();
if (navigationPaneTreeView != null)
{
object itemStorage = typeof(RadTreeView)
.GetProperty("ItemStorage", BindingFlags.Instance | BindingFlags.NonPublic)
.GetValue(navigationPaneTreeView);
MethodInfo itemStorageClearMethod = itemStorage.GetType().GetMethod("Clear", BindingFlags.Instance | BindingFlags.NonPublic);
itemStorageClearMethod.Invoke(itemStorage, null);
}
this.DocumentSource = theNewDocumentSource;
}
The CurrentPageTextBox in the toolbar has stopped displaying in the latest version.
Workaround:
<telerik:CurrentPageTextBox x:Name="PART_CurrentPageNumberTextBox"
HorizontalContentAlignment="Center"
Margin="2" Text="{Binding FixedDocumentViewer.CurrentPageNumber, Mode=TwoWay}"
VerticalContentAlignment="Center" Width="45"
telerik:StyleManager.Theme="Office_Black"/>
The thinnest line thickness is thinner than in Adobe and it is not scaled according to the scale factor.
Observed:
When importing a document with empty pages collection an ArgumentNullException: 'Value cannot be null.
Parameter name: page', is thrown, which leads to application crash.
Workaround: Import the document using the PdfProcessing library and add an empty page:
PdfFormatProvider pdfProcessingFormatProvider =
new
PdfFormatProvider();
RadFixedDocument document = pdfProcessingFormatProvider.Import(stream);
if
(document.Pages.Count == 0)
{
document.Pages.AddPage();
}
Document cannot be loaded because the Encrypt property is not set and is null.
The UserDict collection is not parsed and the procedures for the operators are unavailable. The exception is thrown while trying to read the font file of the Univers and Univers Bold fonts. Internally, an ArgumenNullException is thrown, which results in missing content when the document is shown in RadPdfViewer.