Foxit PDF SDK
foxit::pdf::annots::Note Class Reference
Inheritance diagram for foxit::pdf::annots::Note:
foxit::pdf::annots::Markup foxit::pdf::annots::Annot foxit::Base

Public Member Functions

 Note ()
 Constructor.
 
 Note (const Annot &annot)
 Constructor, with parent class object. More...
 
 ~Note ()
 Destructor.
 
String GetIconName () const
 Get icon name. More...
 
bool GetOpenStatus () const
 Get open status. More...
 
Markup GetReplyTo ()
 Get the markup annotation, which current note annotation is in reply to. More...
 
State GetState ()
 Get the state. More...
 
StateModel GetStateModel ()
 Get the state model. More...
 
bool IsStateAnnot ()
 Check if current note annotation is used as a state annotation. More...
 
void SetIconName (const char *icon_name)
 Set icon name. More...
 
void SetOpenStatus (bool status)
 Set open status. More...
 
void SetState (State state)
 Set the state. More...
 
- Public Member Functions inherited from foxit::pdf::annots::Markup
 Markup (const Annot &annot)
 Constructor, with parent class object. More...
 
 Markup ()
 Constructor.
 
 ~Markup ()
 Destructor.
 
Note AddReply ()
 Add a new reply to the end of reply list. More...
 
void AddRichText (const WString &content, const RichTextStyle &style)
 Add a new rich text string to the end. More...
 
Note AddStateAnnot (const WString &title, StateModel model, State state)
 Add a new state annotation. More...
 
DateTime GetCreationDateTime () const
 Get creation date time. More...
 
MarkupArray GetGroupElements ()
 Get an element (as markup annotation) from the group that current markup annotation belongs to. More...
 
Markup GetGroupHeader ()
 Get the header annotation (as primary annotation) of the group that current markup annotation belongs to. More...
 
String GetIntent () const
 Get intent name. More...
 
float GetOpacity () const
 Get opacity value. More...
 
Popup GetPopup ()
 Get related pop-up annotation. More...
 
Note GetReply (int index) const
 Get a reply by index. More...
 
int GetReplyCount ()
 Count all replies. More...
 
WString GetRichTextContent (int32 index)
 Get text string of a rich text string specified by index. More...
 
int32 GetRichTextCount ()
 Get the count of rich text string. More...
 
RichTextStyle GetRichTextStyle (int32 index)
 Get style data of a rich text string specified by index. More...
 
NoteArray GetStateAnnots (StateModel model)
 Get all state annotations in a specified state model. More...
 
WString GetSubject () const
 Get subject string. More...
 
WString GetTitle () const
 Get title string. More...
 
void InsertRichText (int32 index, const WString &content, const RichTextStyle &style)
 Insert a new rich text string to the place which is specified by index. More...
 
bool IsGrouped ()
 Check whether current markup annotation is in a group or not. More...
 
bool RemoveAllReplies ()
 Remove all the replies. More...
 
bool RemoveAllStateAnnots ()
 Remove all the state annotations. More...
 
bool RemoveReply (int index)
 Remove a reply by index. More...
 
void RemoveRichText (int index)
 Remove a rich text string specified by index. More...
 
void SetCreationDateTime (const DateTime &date_time)
 Set creation date time. More...
 
void SetIntent (const String &intent)
 Set intent name. More...
 
void SetOpacity (float opacity)
 Set opacity value. More...
 
void SetPopup (const Popup &popup)
 Set related pop-up annotation. More...
 
void SetRichTextContent (int32 index, const WString &content)
 Set text string of a rich text string specified by index. More...
 
void SetRichTextStyle (int32 index, const RichTextStyle &style)
 Set style data of a rich text string specified by index. More...
 
void SetSubject (const WString &subject)
 Set subject string. More...
 
void SetTitle (const WString &title)
 Set title string. More...
 
bool Ungroup ()
 Ungroup current markup annotation from the group it belongs to. More...
 
- Public Member Functions inherited from foxit::pdf::annots::Annot
 Annot (const PDFPage &page, objects::PDFDictionary *annot_dict)
 Constructor, with PDF page and annotation's PDF dictionary. More...
 
 Annot (const Annot &annot)
 Constructor, with another annotation object. More...
 
 Annot ()
 Constructor.
 
virtual ~Annot ()
 Destructor.
 
objects::PDFStreamGetAppearanceStream (AppearanceType type, const char *appearance_state="") const
 Get annotation's appearance stream with specified type and state. More...
 
RGB GetBorderColor () const
 Get border color. More...
 
BorderInfo GetBorderInfo () const
 Get border information. More...
 
WString GetContent () const
 Get content. More...
 
RectI GetDeviceRect (const Matrix &matrix)
 Get annotation rectangle in device coordinate system. More...
 
objects::PDFDictionaryGetDict () const
 Get annotation's dictionary object. More...
 
Matrix GetDisplayMatrix (const Matrix &page_display_matrix)
 Get the display matrix, from PDF coordinate system to targeted device coordinate system. More...
 
uint32 GetFlags () const
 Get annotation flags. More...
 
int GetIndex () const
 Get the index of current annotation in the page which current annotation belongs to. More...
 
DateTime GetModifiedDateTime () const
 Get last modified date time. More...
 
objects::PDFDictionaryGetOptionalContent () const
 Get the PDF dictionary of annotation's optional content. More...
 
PDFPage GetPage () const
 Get the related PDF page. More...
 
RectF GetRect () const
 Get rectangle, in PDF coordinate system. More...
 
Type GetType () const
 Get actual annotation type of current annotation. More...
 
WString GetUniqueID () const
 Get unique ID. More...
 
bool HasProperty (Property property) const
 Whether current annotation has the specified annotation's property. More...
 
bool IsEmpty () const
 Check whether current object is empty or not. More...
 
bool IsMarkup () const
 Check if current annotation is a markup annotation. More...
 
bool Move (const RectF &rect)
 Move current annotation to a new position, specified by a new rectangle in PDF coordinate system. More...
 
bool operator != (const Annot &other) const
 Not equal operator. More...
 
Annotoperator= (const Annot &annot)
 Assign operator. More...
 
bool operator== (const Annot &other) const
 Equal operator. More...
 
bool RemoveProperty (Property property)
 Remove a specified annotation's property. More...
 
bool ResetAppearanceStream ()
 Reset appearance stream. More...
 
void SetBorderColor (RGB color)
 Set border color. More...
 
void SetBorderInfo (const BorderInfo &border)
 Set border information. More...
 
void SetContent (const WString &content)
 Set content. More...
 
void SetFlags (uint32 flags)
 Set annotation flags. More...
 
void SetModifiedDateTime (const DateTime &date_time)
 Set last modified date time. More...
 
void SetUniqueID (const WString &unique_id)
 Set unique ID. More...
 
- Public Member Functions inherited from foxit::Base
FS_HANDLE Handle () const
 Get the handle of current object. More...
 

Additional Inherited Members

- Public Types inherited from foxit::pdf::annots::Markup
enum  EndingStyle {
  e_EndingStyleNone = 0, e_EndingStyleSquare = 1, e_EndingStyleCircle = 2, e_EndingStyleDiamond = 3,
  e_EndingStyleOpenArrow = 4, e_EndingStyleClosedArrow = 5, e_EndingStyleButt = 6, e_EndingStyleROpenArrow = 7,
  e_EndingStyleRClosedArrow = 8, e_EndingStyleSlash = 9
}
 Enumeration for line ending style. More...
 
enum  MeasureType {
  e_MeasureTypeX = 0, e_MeasureTypeY = 1, e_MeasureTypeD = 2, e_MeasureTypeA = 3,
  e_MeasureTypeT = 4, e_MeasureTypeS = 5
}
 Enumeration for annotation's measure type. More...
 
enum  State {
  e_StateMarked = 1, e_StateUnmarked = 2, e_StateAccepted = 3, e_StateRejected = 4,
  e_StateCancelled = 5, e_StateCompleted = 6, e_StateNone = 7
}
 Enumeration for markup annotation's state. More...
 
enum  StateModel { e_StateModelMarked = 1, e_StateModelReview = 2 }
 Enumeration for markup annotation's state model. More...
 
- Public Types inherited from foxit::pdf::annots::Annot
enum  AppearanceType { e_AppearanceTypeNormal = 0, e_AppearanceTypeRollover = 1, e_AppearanceTypeDown = 2 }
 Enumeration for the type of annotation's appearance. More...
 
enum  Flags {
  e_FlagInvisible = 0x0001, e_FlagHidden = 0x0002, e_FlagPrint = 0x0004, e_FlagNoZoom = 0x0008,
  e_FlagNoRotate = 0x0010, e_FlagNoView = 0x0020, e_FlagReadOnly = 0x0040, e_FlagLocked = 0x0080,
  e_FlagToggleNoView = 0x0100, e_FlagLockedContents = 0x0200
}
 Enumeration for PDF annotation flags. More...
 
enum  HighlightingMode {
  e_HighlightingNone = 0, e_HighlightingInvert = 1, e_HighlightingOutline = 2, e_HighlightingPush = 3,
  e_HighlightingToggle = 4
}
 Enumeration for PDF annotation highlighting mode. More...
 
enum  MKEntry {
  e_MKEntryRotation = 0, e_MKEntryBorderColor = 1, e_MKEntryBackgroundColor = 2, e_MKEntryNormalCaption = 3,
  e_MKEntryRolloverCaption = 4, e_MKEntryDownCaption = 5, e_MKEntryNormalIcon = 6, e_MKEntryRolloverIcon = 7,
  e_MKEntryDownIcon = 8, e_MKEntryIconFit = 9, e_MKEntryIconCaptionRelation = 10
}
 Enumeration for annotation's MK dictionary (an appearance characteristics) entry. More...
 
enum  MKIconCaptionRelation {
  e_MKRelationNoIcon = 0, e_MKRelationNoCaption = 1, e_MKRelationCaptionBelowIcon = 2, e_MKRelationCaptionAboveIcon = 3,
  e_MKRelationCaptionRight = 4, e_MKRelationCaptionLeft = 5, e_MKRelationCaptionOvrlayOnIcon = 6
}
 Enumeration for icon and caption relative position in annotation's MK dictionary. More...
 
enum  Property { e_PropertyModifiedDate = 0, e_PropertyCreationDate = 1, e_PropertyBorderColor = 2, e_PropertyFillColor = 3 }
 Enumeration for some PDF annotation property. More...
 
enum  Type {
  e_UnknownType = 0, e_Note = 1, e_Link = 2, e_FreeText = 3,
  e_Line = 4, e_Square = 5, e_Circle = 6, e_Polygon = 7,
  e_PolyLine = 8, e_Highlight = 9, e_Underline = 10, e_Squiggly = 11,
  e_StrikeOut = 12, e_Stamp = 13, e_Caret = 14, e_Ink = 15,
  e_PSInk = 16, e_FileAttachment = 17, e_Sound = 18, e_Movie = 19,
  e_Widget = 20, e_Screen = 21, e_PrinterMark = 22, e_TrapNet = 23,
  e_Watermark = 24, e_3D = 25, e_Popup = 26, e_Redact = 27
}
 Enumeration for PDF annotation type. More...
 

Detailed Description

A note annotation (known as "text" annotation in <PDF reference 1.7>) represents a "sticky note" attached to a point in the PDF document. When closed, the annotation appears as an icon; when open, it displays a pop-up window containing the text of the note in a font and size chosen by the viewer application.
A note annotation can also be used as a reply to a markup annotation, or a state annotation:

  • When as a reply, the note annotation should not be shown alone but together with other replies in the form of threaded comments. Function Note::GetReplyTo can be used to get the markup annotation, to which the note annotation replies.
  • When as a state, the note annotation would not be shown alone. Function Note::IsStateAnnot can be used to judge if a note annotation is used as a state.

Note annotation is a kind of markup annotation, so class Note is derived from class Markup. It offers functions to get/set note annotation's properties and reset appearance of a note annotation.

Note
For a newly created common note annotation, if user calls function Annot::ResetAppearanceStream directly without setting any properties, the default appearance will be used:
border color = 0xFFFFFF00 (yellow), opacity = 1.0, icon name = "Comment".
See also
Markup

Constructor & Destructor Documentation

◆ Note()

foxit::pdf::annots::Note::Note ( const Annot annot)
explicit

Constructor, with parent class object.

Parameters
[in]annotParent class object.

Member Function Documentation

◆ GetIconName()

String foxit::pdf::annots::Note::GetIconName ( ) const

Get icon name.

This property has effect on note annotation's appearance. Note annotation has predefined standard icon names:
"Check", "Circle", "Comment", "Cross", "Help", "Insert", "Key", "NewParagraph", "Note", "Paragraph", "RightArrow", "RightPointer", "Star", "UpArrow", "UpLeftArrow".
An empty icon name string means current note annotation would be treated as "Note" icon.

Returns
Icon name string.

◆ GetOpenStatus()

bool foxit::pdf::annots::Note::GetOpenStatus ( ) const

Get open status.

Open status is a boolean value that specifies whether a note annotation should initially be displayed open:

  • true means the note annotation should be initially be displayed open.
  • false means the note annotation should be initially be displayed closed.
Returns
Open status.

◆ GetReplyTo()

Markup foxit::pdf::annots::Note::GetReplyTo ( )

Get the markup annotation, which current note annotation is in reply to.

This function is only useful when current note annotation is used as a reply.

Returns
A markup annotation object, which current note annotation is in reply to. If the return value of function Annot::IsEmpty (inherited from Markup's parent class) for the returned markup annotation object is true, that means current note annotation is not used as a reply.

◆ GetState()

State foxit::pdf::annots::Note::GetState ( )

Get the state.

This function can only be used when current note annotation is used as a state annotation. Function Note::IsStateAnnot can be used to check if current note annotation is used as a state annotation.

Returns
The state. Please refer to values starting from Markup::e_StateMarked and this would be one of these values. If current note annotation is not a state annotation, This function will return 0.

◆ GetStateModel()

StateModel foxit::pdf::annots::Note::GetStateModel ( )

Get the state model.

This function can only be used when current note annotation is used as a state annotation. Function Note::IsStateAnnot can be used to check if current note annotation is used as a state annotation.

Returns
The state model. If function succeeds, the return value would be Markup::e_StateModelMarked or Markup::e_StateModelReview.
If current note annotation is not a state annotation, this function will return 0.

◆ IsStateAnnot()

bool foxit::pdf::annots::Note::IsStateAnnot ( )

Check if current note annotation is used as a state annotation.

Returns
true means current note annotation is used as a state annotation, while false means current note annotation is just a common note annotation.

◆ SetIconName()

void foxit::pdf::annots::Note::SetIconName ( const char *  icon_name)

Set icon name.

This property has effect on note annotation's appearance. Note annotation has predefined standard icon names:
"Check", "Circle", "Comment", "Cross", "Help", "Insert", "Key", "NewParagraph", "Note", "Paragraph", "RightArrow", "RightPointer", "Star", "UpArrow", "UpLeftArrow".
An empty icon name string means current note annotation would be treated as "Note" icon.
For a newly created note annotation, if current function is not called, icon name will be "Comment" by default.
If user wants the new icon name has effect on annotation's appearance, please call function Annot::ResetAppearanceStream after setting the new icon name.

Parameters
[in]icon_nameNew icon name string to be set.
Returns
None.

◆ SetOpenStatus()

void foxit::pdf::annots::Note::SetOpenStatus ( bool  status)

Set open status.

Open status is a boolean value that specifies whether a note annotation should initially be displayed open:

  • true means the note annotation should be initially be displayed open.
  • false means the note annotation should be initially be displayed closed.
Parameters
[in]statusThe new open status value.
Returns
None.

◆ SetState()

void foxit::pdf::annots::Note::SetState ( State  state)

Set the state.

This function can only be used when current note annotation is used as a state annotation. Function Note::IsStateAnnot can be used to check if current note annotation is used as a state annotation.

Parameters
[in]stateNew state. It should be one of following values: State model can be gotten by function Note::GetStateModel.
Returns
None.