My Project
foxit::pdf::annots::Link Class Reference
Inheritance diagram for foxit::pdf::annots::Link:
foxit::pdf::annots::Annot foxit::Base

Public Member Functions

 Link ()
 Constructor.
 
 Link (const Annot &annot)
 Constructor, with parent class object. More...
 
 ~Link ()
 Destructor.
 
actions::Action GetAction ()
 Get action. More...
 
HighlightingMode GetHighlightingMode ()
 Get highlighting mode. More...
 
QuadPointsArray GetQuadPoints () const
 Get quadrilaterals. More...
 
bool RemoveAction ()
 Remove action. More...
 
void SetAction (const actions::Action &action)
 Set action. More...
 
void SetHighlightingMode (HighlightingMode mode)
 Set highlighting mode. More...
 
void SetQuadPoints (const QuadPointsArray &quad_points_array)
 Set quadrilaterals. 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 (bool is_transform_icon, const Matrix &matrix)
 Get annotation rectangle in device coordinate system. More...
 
objects::PDFDictionaryGetDict () const
 Get annotation's dictionary object. 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 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::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 link annotation represents an action to be performed.
Class annots::Link is derived from Annot, and offers functions to get/set link annotation's properties and reset appearance stream of a link annotation.

Note
For a newly created link annotation, if user calls function Annot::ResetAppearanceStream directly without setting any other properties, the default appearance will be used:
border width = 1.0, border style = BorderInfo::e_Solid, border color = 0xFFFF0000 (red), opacity = 1.0, highlighting mode = Annot::e_HighlightingNone.
See also
Annot

Constructor & Destructor Documentation

◆ Link()

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

Constructor, with parent class object.

Parameters
[in]annotParent class object.

Member Function Documentation

◆ GetAction()

actions::Action foxit::pdf::annots::Link::GetAction ( )

Get action.

Returns
An action object that receives the action data. If the return value of function actions::Action::IsEmpty for the returned action object is true, that means no action.

◆ GetHighlightingMode()

HighlightingMode foxit::pdf::annots::Link::GetHighlightingMode ( )

Get highlighting mode.

Returns
Highlighting mode value. Please refer to values starting from Annot::e_HighlightingNone and this would be one of these values except Annot::e_HighlightingToggle. -1 means no highlighting mode value is found.

◆ GetQuadPoints()

QuadPointsArray foxit::pdf::annots::Link::GetQuadPoints ( ) const

Get quadrilaterals.

The order of points in a quadrilateral should be:

  • The first point is the point in left-top corner of the quadrilateral.
  • The second point is the point in right-top corner of the quadrilateral.
  • The third point is the point in left-bottom corner of the quadrilateral.
  • The fourth point is the point in right-bottom corner of the quadrilateral.
Returns
A quadrilateral points array that receives the quadrilaterals value.

◆ RemoveAction()

bool foxit::pdf::annots::Link::RemoveAction ( )

Remove action.

Returns
true means success, while false means failure.

◆ SetAction()

◆ SetHighlightingMode()

void foxit::pdf::annots::Link::SetHighlightingMode ( HighlightingMode  mode)

Set highlighting mode.

Parameters
[in]modeNew highlighting mode value. Please refer to values starting from Annot::e_HighlightingNone and this should be one of these values except Annot::e_HighlightingToggle.
Returns
None.

◆ SetQuadPoints()

void foxit::pdf::annots::Link::SetQuadPoints ( const QuadPointsArray quad_points_array)

Set quadrilaterals.

This property has effect on the link annotation's appearance.The order of points in a quadrilateral should be :

  • The first point is the point in left-top corner of the quadrilateral.
  • The second point is the point in right-top corner of the quadrilateral.
  • The third point is the point in left-bottom corner of the quadrilateral.
  • The fourth point is the point in right-bottom corner of the quadrilateral.

If user wants the new quadrilaterals has effect on annotation's appearance, please call function Annot::ResetAppearanceStream after setting quadrilaterals.

Parameters
[in]quad_points_arrayA valid array of quadrilaterals. It should not be an empty array.
Returns
None.

Foxit Software Corporation Logo
@2019 Foxit Software Incorporated. All rights reserved.