Version 9.1.1.78644 Changelog (October 25th, 2021)

Version: 9.1.1.78644

Release Date: October 25th, 2021

Breaking Changes

  • [tools] TabControlViewModel class: event name changed

Declaration

From:

TabControlViewModel.FixedButtonClicked

To:

TabControlViewModel.BrowseDocumentRequested

New Features

Record and Play Sound Annotation

With the new AudioControl it is possible to record voice, play, pause and stop recording sessions and create sound annotations while continue working on the document

Apryse Docs Image

Create Documents using ViewerControl

Now the ViewerControl supports the creation of new documents by creating a blank PDF with a specific paper type or creating it from an image like a scanned file.

Apryse Docs Image

Enhanced Context Menu

The context menu has been enahanced adding a second row of tools and an expandable flyout menu which can be used for extra features like Reset Zoom, Paste Annotation, etc.

Apryse Docs Image

Improvements

  • [tools] [control] ViewerControl: Full keyboard shortcut support
  • [tools] [control] Outline: improved performance and memory usage
  • [tools] Series of updates to replace MessageDialog by ContentDialog for better UX

Bug Fixes

  • [pdf] Fixed issue that would cause Windows Apps Cert Kit to fail during validation process.
  • [pdf] Fixed potential exception when using Highlights or TextSearch APIs
  • [tools] [control] ViewerControl: Fixed file type not supported when the file type name is not all lower case
  • [tools] [control] ViewerControl: Fixed potential null exception when navigating away from the Page that hosts ViewerControl
  • [tools] [control] ViewerControl: Fixed potential null exception when closing Reflow
  • [tools] [control] ViewerControl: Fixed potential null exception when command bar right click / tap is issued and control has not been fully initialized
  • [tools] [control] ViewerControl: Fixed potential exception when changing reflow and outline colors in View Mode
  • [tools] [control] ViewerControl: Fixed color mode selected (View Mode) not saved on app startup
  • [tools] [control] ViewerControl: Series of fixes for ReadOnlyMode to ensure no editing is enabled
  • [tools] [control] ThumbnailsView: Fixed reoder page bug that prevents outlines from going to the moved page.
  • [tools] [control] ThumbnailsView: Fixed thumbnail single item reorder animation
  • [tools] [control] ThumbnailsView: Fixed thumbnail multi reorder bug where duplicate pages are shown.
  • [tools] [control] Outline: Fixed quick adding a new child outline when parent is not yet expanded which would case to other children to not be displayed
  • [tools] Fixed potential null exception for the Text Markup Editing tool
  • [tools] Fixed possible exception when DocumentManager has not been initialized yet and an use attempt is performed
  • [tools] Varies UI fixes
  • [tools] Varies Localization / Language fixes

New APIs - Tools Package SDK

New Methods

  • void ToolManager.DeleteAnnotation(PDFViewCtrl, IAnnot, int)
  • async Task<StorageFile> DocumentManager.SaveToTemporaryFileAsync(PDFDoc, string, bool)
  • Outline.Dispose
  • OutlineViewModel.Dispose()
  • OutlineDialogViewModel.Dispose()
  • void ReflowView.SetColorPostProcessingMode(PDFRasterizerColorPostProcessMode, Windows.UI.Color, Windows.UI.Color)
  • static async Task<StorageFile> DocumentManager.SaveAudioStreamToDiskAsync(IRandomAccessStream)
  • static async Task DocumentManager.CleanupTempAudioFilesFromDiskAsync()
  • bool UtilityFunctions.IsAudioCaptureAvailable()
  • static void UtilityFunctions.ShowToastNotification(string, string, uint)
  • static async Task<IRandomAccessStream> UtilityFunctions.ConvertToRandomAccessStreamAsync(MemoryStream)
  • static byte[] UtilityFunctions.SwapByteArray(byte[])
  • static async Task UtilityFunctions.RunAsyncSaferAsync(CoreWindow, DispatchedHandler)
  • static async Task UtilityFunctions.RunAsyncSaferAsync(CoreWindow, Func<Task>)

New Properties

  • ViewerViewModel.IsAudioControlVisible
  • AudioControl SoundControl
  • BooleanToBackgroundColorConverter.SelectedBrushProperty
  • BooleanToBackgroundColorConverter.SelectedBrush
  • BooleanToBackgroundColorConverter.UnSelectedBrushProperty
  • BooleanToBackgroundColorConverter.UnSelectedBrush
  • bool ViewerControl.IscurrentDocumentModified
  • bool FreehandCreate.AllowDrawingDot

New Events

  • ToolManager.OnSoundAnnotRequested
  • ViewerControl.DocumentModified
  • ViewerViewMode.DocumentModified
  • TabControlViewModel.CreateDocumentRequested

New Commands

  • TabControlViewModel.CMDBrowseDocument
  • TabControlViewModel.CMDCreateDocument

New Enum - pdftron.PDF.Tools.Controls.FloatingBoundary

  • None
  • Parent
  • Window

New Enum - pdftron.PDF.Tools.Controls.FloatingStartPosition

  • TopLeft
  • BottomCenter

New Class - pdftron.PDF.Tools.Controls.FloatingContentControl

  • bool Draggable
  • FloatingBoundary Boundary
  • FloatingStartPosition StartPosition

New Control - pdftron.PDF.Tools.Controls.ContextMenuControl

  • New Constructors
  • ContextMenuControl(pdftron.PDF.PDFViewCtrl)
  • New Methods
  • ContextMenuControl(pdftron.PDF.PDFViewCtrl, Dictionary<string, string>)
  • void Show(UIPoint)
  • void Hide()
  • bool IsOpen()
  • bool ShowOverflow()
  • double HorizontalOffset()
  • double VerticalOffset()
  • int MaxButtonsPerRow()
  • int OverflowContainerRow()
  • ObservableCollection<Button> ButtonCollection()
  • ObservableCollection<MenuFlyoutItem> OverflowCollection()
  • void CreateOverflowFromDictionary(Dictionary<string, string>)
  • void AddItemToOverflowCollection(MenuFlyoutItem)
  • void AddButtonToCollection(Button, bool)
  • void CreateButtonsFromDictionary(Dictionary<string, string>)
  • void ClearButtonCollection()
  • void ClearOverflowCollection()
  • void InitBaseTools()
  • New Events
  • event ContextMenuControlViewModel.ItemClickedDelegate ItemClicked

New Class - ContextMenuControlViewModel

  • New Constructors
    • ContextMenuControlViewModel(pdftron.PDF.PDFViewCtrl)
    • ContextMenuControlViewModel(pdftron.PDF.PDFViewCtrl, Dictionary<string, string>)
  • New Methods
    • void Show()
    • void Show(UIPoint)
    • void Hide(bool)
    • void CreateOverflowFromDictionary(Dictionary<string, string>)
    • void AddItemToOverflowCollection(MenuFlyoutItem)
    • void AddButtonToCollection(Button, bool)
    • void CreateButtonsFromDictionary(Dictionary<string, string>)
    • void ClearButtonCollection()
    • void ClearOverflowCollection()
    • void InitBaseTools()
    • void TargetSquare(double, double, double, double)
    • void TargetPoint(UIPoint pt)
    • void Dispose()
  • New Properties
    • bool IsOpen
    • bool ShowOverflow
    • double HorizontalOffset
    • double VerticalOffset
    • int MaxButtonsPerRow
    • int OverflowContainerRow
    • ObservableCollection<Button> ButtonCollection
    • ObservableCollection<MenuFlyoutItem> OverflowCollection
  • New Events
    • event ItemClickedDelegate ItemClicked

New Class - pdftron.PDF.Tools.Controls.Multimedia.AudioControl

  • New Constructors
    • AudioControl(PDFViewCtrl, Windows.Foundation.Point)
  • New Properties
    • AudioControlViewModel ViewModel
    • bool IsReady
  • New Methods
    • async Task<bool> InitializeAsync()
    • StorageFile RecordedFile()
    • void CloseControl()
    • void Dispose()
  • New Events
    • event OnCloseRequestedHandler CloseRequested
    • event OnRecordingCompletedHandler RecordingCompleted

New Enum - pdftron.PDF.Tools.Controls.ViewModels.Multimedia.AudioPlayerMode

  • RecordAndPlay
  • PlayOnly

New Class - pdftron.PDF.Tools.Controls.ViewModels.Multimedia.AudioControlViewModel

  • New Constructors
    • AudioControlViewModel(PDFViewCtrl, Windows.Foundation.Point, AudioPlayerMode)
  • New Properties
    • bool IsRecButtonVisible
    • bool IsRecTimeVisible
    • bool IsPlayButtonVisible
    • bool IsPauseRecordingButtonVisible
    • bool IsPlaybackButtonVisible
    • bool CanPlayPreview
    • bool IsRecording
    • bool IsRecordingInProgress
    • string TotalTime
    • string ElapsedTime
    • double SliderPosition
    • bool IsReady
    • StorageFile RecordedFile
  • New Methods
    • async Task<bool> InitAsync()
    • void Dispose()
  • New Commands
    • ICommand CMDRecordAudio
    • ICommand CMDPauseRecording
    • ICommand CMDCloseAudio
    • ICommand CMDPlayPlayback
    • ICommand CMDPausePlayback
    • ICommand CMDStopAudio
  • New Events
    • event OnCloseRequestedHandler CloseRequested
    • event OnRecordingCompletedHandler RecordingCompleted

New Class - pdftron.PDF.Tools.Controls.Multimedia.AudioGraphPlayer

  • New Constructors
    • AudioGraphPlayer()
  • New Properties
  • New Methods
    • async Task InitAudioGraphAsync()
    • async Task LoadFileAsync(StorageFile)
    • void Play()
    • void Stop()

New Class - pdftron.PDF.Tools.Controls.CreateDocControl

  • New Constructors
    • CreateBlankDocControl()
  • New Properties
    • CreateDocControlViewModel ViewModel
  • New Methods
    • void Dispose()
  • New Events
    • event NewDocumentCreated
    • event DocumentCreationFailed

New Class - pdftron.PDF.Tools.Controls.CreateImageDocControl

  • New Constructors
    • CreateImageDocControl()
  • New Properties
    • CreateDocControlViewModel ViewModel

New Class - pdftron.PDF.Tools.Controls.CreateBlankDocControl

  • New Constructors
    • CreateBlankDocControl()
  • New Properties
    • CreateDocControlViewModel ViewModel

New Enum - PaperSizes

  • Letter
  • Legal
  • A0
  • A1
  • A2
  • A3
  • A4
  • A5
  • B0
  • B1
  • B2
  • B3
  • B4
  • B5

New Class - PaperSizeHolder

  • New Constructors
    • PaperSizeHolder(PaperSizes, double, double, string)
  • New Properties
    • PaperSizes PaperSize
    • double Width
    • double Height

New Enum - CreateDocFrom

  • Blank
  • Image

New Enum - ImageCreationType

  • File
  • Camera
  • None

New Class - CreateDocControlViewModel

  • New Constructors
    • CreateDocControlViewModel() -
  • New Properties
    • ObservableCollection<PaperTypeHolder> AvailablePaperTypes
    • ObservableCollection<PaperSizeHolder> AvailablePaperSizes
    • string DocumentTitle
    • CreateDocFrom DocumentType
    • bool IsPortrait
    • PaperSizeHolder SelectedPaperSize
    • PaperTypeHolder SelectedPaperType
    • int TotalPages
    • string DefaultDocumentName
    • BitmapImage PreviewImage
    • bool IsImageSelected
    • ImageCreationType ImageType
  • New Events
    • event DocumentCreationFailed
    • event NewDocumentCreated
  • New Commands
    • RelayCommand CMDPickImageFromFile
    • RelayCommand CMDPickImageFromCamera
    • RelayCommand CMDCreateDocument

Did you find this helpful?

Trial setup questions?

Ask experts on Discord

Need other help?

Contact Support

Pricing or product questions?

Contact Sales