NotateXpress 13 for .NET - User Guide > How To > Retrieve Annotations > Retrieve Annotations from XFDF |
Annotations in an XFDF file or memory are loaded using the same methods as those used for loading NotateXpress™ annotation data from file or memory:
LoadOptions can be used, if desired, to provide specific instructions for loading the annotations.
Use the LayerCollection. FromFile method to retrieve the layer collection from an annotation file. If the XFDF is a multi-page file, set the property to specify from which page annotations should be loaded. Attempting to load a page that does not exist will cause a PageNotFound error.
LoadOptions can be used, if desired, to provide specific instructions for loading the annotations.
Use the LayerCollection.FromByteArray to save annotations from a byte array to a specified layer, or
use the LayerCollection.FromMemoryStream to retrieve annotations from a memory stream.
Many of the annotations that can be expressed in an XFDF file have a direct corresponding annotation within NotateXpress. These annotations are imported without modification:
XFDF Annotation | NotateXpress Annotation |
Circle | Ellipse |
Square | Rectangle |
Polygon | Polygon |
Line | Line |
Ink | Freehand |
Highlight | BlockHighlight |
FreeText | Text |
Text | Note |
The following XFDF supported annotations do not have a direct equivalent within NotateXpress. These are translated to NotateXpress as follows:
XFDF Annotation | NotateXpress Annotation | Translation / Modification |
Stamp |
Stamp Image |
The XFDF stamps that are available by default in Acrobat are converted to NotateXpress Stamp annotations that contain the annotation text. The stamp data is stored by NotateXpress so that if these stamps are written back to XFDF, no stamp data is lost. Uncompressed bitmap XFDF stamps (including all stamps originally written from NotateXpress to XFDF) are converted to NotateXpress images and are displayed by NotateXpress. All other XFDF stamps are converted to NotateXpress stamps with the text "?". The stamp data is stored by NotateXpress so that if these stamps are written back to XFDF, no stamp data is lost. |
Underline Strikeout Squiggly Caret |
Line | Squiggly annotation lines are displayed as dotted lines, and caret annotation lines are displayed as arrows. The type of the line is stored by NotateXpress so that if the annotation is written back to XFDF it is written with the same type. For example, if an underline annotation is loaded and then saved to an XFDF file, it will be saved as an XFDF underline annotation. |
Popup | Note | An XFDF popup annotation is loaded as a NotateXpress Note annotation grouped with the annotation that contains the popup. |
NotateXpress will automatically map PDF coordinates to NotateXpress coordinates. Should you need to override these values, use the MappingInput event to access the original XFDF X and Y values and the new NotateXpress mapped X and Y values for an annotation. You can set the new mapped values to modify the position of the loaded annotation.
The following XFDF supported annotation attributes do not have a direct equivalent within NotateXpress. These attributes are translated to NotateXpress as follows:
XFDF Annotation Attribute |
NotateXpress Annotation Attribute |
Translation / Modification |
Title |
ToolTipText |
|
Name |
ItemName |
|
Flags |
Visible Locked |
If the XFDF flag is set to "noview" or "hidden", the NotateXpress Visible annotation attribute is set to "false" If the XFDF flag is set to "locked" or "readonly", the NotateXpress Locked annotation attribute will be set to true |
Width | PenWidth | The XFDF width attribute is half that of the NotateXpress PenWidth. Therefore, an XFDF width of 3.5 will be loaded into NotateXpress as a PenWidth of 7. |
Opacity | Opacity | An XDFDF annotation with an opacity greater than 0.9 will be converted to NotateXpress as opaque. An XFDF annotation with an opacity less than 0.1 will be converted as transparent. An XFDF annotation with an opacity between 0.1 and 0.9 will be converted as translucent. |
All other XFDF annotation types will be dropped by NotateXpress. An event will be fired to enable the application to access and store the data associated with unsupported annotations.