Some test text!


Version 8.1.1 Changelog (February 17, 2021)


Release Date: February 17, 2021


This release of PDFTron's SDK for UWP adds Microsoft WinUI 2 library as a dependency of the UWP Tools SDK.

linkBreaking Changes

  • [tools] [resources] All converters moved to pdftron.PDF.Tools.Converters namespace
  • [tools] [resources] All command events moved to pdftron.PDF.Tools.Commands.Events namespace
  • [tools] [dependency] Removed pdftron.UWP.Common.dll as a dependency

linkChanged Behavior

  • [tools] [control] AnnotationCommandBar default height changed from 48px to 40px

linkNew Features

linkMeasurement tools: Ruler, Area and Perimeter

Note: when editing area or perimeter a feedback value is displayed while dragging a vertice

Area Tool
  • When editing ruler annotation is possible to calibrate it in order to change it's value and measurement unit
Ruler Tool

linkArea and Text Redaction

Note: Area Redaction allows to add an overlay text on the redacted region


linkNew Viewer Control

Note: for more information on how to implement the Viewer Control please follow the guide here...

Viewer Control


  • [pdf] Added PDFDoc generator which allow to create Blank, Grid, Lined, Graph, Music, Dotted, and Isometric paper type
  • [pdf] Added capability of applying OCR XML and JSON data to PDF
  • [tools] Added RulerCreate / Ruler Annotation and Calibration feature
  • [tools] Added AreaCreate / Area Annotation
  • [tools] Added PerimeterCreate / Perimeter Annotation
  • [tools] Added vertices editing for Advanced Shapes: Polygon, Polyline, Cloud, Area and Perimeter annotations.
  • [tools] Added Area Redaction
  • [tools] Added Text Redaction
  • [tools] Marquee Zoom: Added missing property to Enable or Disable it on AnnotationToolbar
  • [tools] [control] Added CropPopupControl
  • [tools] [control] Added CustomColorPopupControl
  • [tools] [control] Added OptimizePopupControl
  • [tools] [control] Added PasswordPopupControl
  • [tools] [control] Added QuickSettingsControl
  • [tools] [control] Added ViewerControl
  • [tools] [control] Thumbnail Viewer: added duplicate page command to the overlay page commands
  • [tools] [control] Annotation Toolbar: Added Save option after adding an advanced shape considering the min points for polygon (3 pts) and polyline (2 pts)
  • [tools] [control] Added FindTextDialog
  • [tools] [control] Added OutlineDialog
  • [tools] [control] Added PDFViewCtrlTabButtonControl
  • [tools] [control] Added PDFViewCtrlTabControl
  • [tools] [control] Added SaveAsNotification
  • [tools] [control] Updated UI design of AnnotationPropertyDialog
  • [tools] [utility] Added WindowsInfo as a helper class when using adaptive code
  • [tools] [utility] Added MeasureUtils as a helper class when working with measurements tools
  • [tools] [resources] Added glyph-icon.ttf with new icons design
  • [tools] [dependency] Added Microsoft.UI.Xaml v2.5.0 (WinUI 2.5)

linkBug Fixes

  • [tools] Fixed crash when using FreeHand annotation with mouse and pen/stylus
  • [tools] Fixed Marquee Tool not returning to Pan if setting is enabled
  • [tools] Added Adaptive Code for old Windows SDK versions (FreeText and AnnotEdit)
  • [tools] Fixed Polygon not adding filling color on creation
  • [tools] Fixed Signature dialog hang if no signature was inserted
  • [tools] Fixed annotation tool not properly switching between main and secondary menu on the annotation toolbar when resizing app
  • [tools] Removed SelectionFlyout popup from RichText when editing FreeText annotation for not being supported
  • [tools] Fixed crash when using AdvancedShapeCreate and a tentative of creation happens when no points have been selected
  • [tools] Fixed missing fill color when creating Polygon, Cloud and Area annot
  • [tools] [control] Fixed ThumbnailItem missing IsConvert property binding issue
  • [tools] [control] Fixed ThumbnailItem missing IsConvert property binding issue

linkNew APIs - PDF SDK

New class: PDFDocGenerator

  • New method: static PDFDoc GenerateBlankPaperDoc(double, double, double, double, double)
  • New method: static PDFDoc GenerateGridPaperDoc(double, double, double, double, double red, double, double, double, double, double)
  • New method: static PDFDoc GenerateLinedPaperDoc(double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double)
  • New method: static PDFDoc GenerateGraphPaperDoc(double, double, double, double, double, int, double, double, double, double, double, double)
  • New method: static PDFDoc GenerateMusicPaperDoc(double, double, double, int, double, double, double, double, double, double, double, double)
  • New method: static PDFDoc GenerateDottedPaperDoc(double, double, double, double, double, double, double, double, double, double)
  • New method: static PDFDoc GenerateIsometricDottedPaperDoc(double, double, double, double, double, double, double, double, double, double)

New class: OCRModule

  • void OCRModule.ApplyOCRJsonToPDF(PDFDoc, string)
  • void OCRModule.ApplyOCRXmlToPDF(PDFDoc, string)

linkNew APIs - Tools Package SDK

New class: RectRedactionCreate

New class: TextRedactionCreate

New interface: IMeasure

New enum: PageUnit

New enum: MeasureInfoType

New class: MeasureInfo

New class: MeasureInfoGroup

New class: MeasureUtils

  • New method: static void SetMeasurementInfo(IAnnot, IMeasure)
  • New method: static void LoadMeasureInfoToObj(Obj, IMeasure)
  • New method: static MeasureInfoGroup GetAnnotMeasureInfo(IAnnot)
  • New method: static MeasureInfo GetMeasureIngo(Obj)
  • New method: static bool IsRulerMeasure(IAnnot)
  • New method: static bool IsAreaMeasure(IAnnot)
  • New method: static bool IsPerimeterMeasure(IAnnot)
  • New method: static string GetIT(IAnnot)
  • New method: static string ConvertToFinalVal(double, string, string, string, string, string)
  • New method: static double ConvScaleToPDFFactor(PageUnit, ToolType, string, string)
  • New method: static double ConvStrToPDFPrecision(string)
  • New method: static string ConvPDFPrecisionToStr(double)
  • New method: static PageUnit GetPageUnitFromString(string)
  • New method: static string FormatDecimals(double, string)
  • New method: static double CalcPerimeter(List<Point>)
  • New method: static double CalcArea(List<Point>)
  • New method: static void UpdateAreaAnnot(Annots.Polygon)
  • New method: static void UpdatePerimeterAnnot(Annots.PolyLine)

New class: RulerCreate

New class: AreaMeasureCreate

New class: PerimeterMeasureCreate

New class: AnnotEditAdvancedShape

New class: WindowsInfo

  • New method: static WindowsInfo RetrieveApiInfo()

New enum: Build

New class: BooleanToBackgroundColorConverter

New class: BooleanToBrushConverter

New class: BooleanToMarginConverter

New class: BooleanToMaxLengthConverter

New class: BooleanToMaxWidthConverter

New class: BooleanToOpacityConverter

New class: BooleanToOpacityParamConverter

New class: BooleanToThicknessConverter

New class: DoubleToPointLabelConverter

New class: DoubleToThicknessConverter

New class: EmptyOrNullToVisibilityConverter

New class: EnumToBooleanConverter

New class: EnumToOpacityConverter

New class: IconToCustomUnicodeConverter

New class: IntEnumToBooleanConverter

New class: IntEnumToVisibilityConverter

New class: InverseBooleanToIntParameterConverter

New class: NotNullToBooleanConverter

New class: NotNullToVisibilityConverter

New class: RatioToPercentageConverter

New class: RatioToPercentageLabelConverter

New class: ReverseBooleanToBackgroundOpacityConverter

New class: ReverseBooleanToThicknessConverter

New class: ReverseSelectedToOpacityConverter

New class: SelectedIconToCustomUnicodeConverter

New class: SelectedToOpacityConverter

New class: StringToResourceConverter

New class: ThicknessToHalfPointConverter

New class: ToolTypeToBooleanConverter

New class: GreaterThanToOpacityConverter

New class: NumberToColumnNameConverter

New class: static DependencyObjectExtensions

New class: AsyncCommand

New class: AsyncCommandBase

New interface: IAsyncCommand

New class: NotifyTaskCompletion<TResult>

New class: RelayCommand<T>

New class: CheckedCommand

New class: CloseRequestedCommand

New class: FlyoutClosedCommand

New class: FlyoutOpenedCommand

New class: ItemClickCommand

New class: KeyDownCommand

New class: KeyUpCommand

New class: LoadedCommand

New class: LostFocusCommand

New class: PasswordChangedCommand

New class: PointerContactCommand

New class: PointerPressedCommand

New class: RightTappedCommand

New class: SelectionChangedCommand

New class: SizeChangedCommand

New class: TappedCommand

New class: TextChangedCommand

Get the answers you need: Support


Free Trial

Get unlimited trial usage of PDFTron SDK to bring accurate, reliable, and fast document processing capabilities to any application or workflow.

Select a platform to get started with your free trial.

Unlimited usage. No email address required.

Join our upcoming webinar to learn about how to collaborate on videos frame by frame directly in your browser

Save your seat