Foxit PDF SDK
foxit.pdf.annots.FreeText Class Reference
Inheritance diagram for foxit.pdf.annots.FreeText:
foxit.pdf.annots.Markup foxit.pdf.annots.Annot foxit.common.Base

Public Member Functions

 FreeText ()
 Constructor.

 
 FreeText (Annot annot)
 Constructor, with parent class object.
More...
 
void AllowTextOverflow (bool is_text_overflow)
 Decide whether to allow the text of callout to overflow or not.
More...
 
Alignment GetAlignment ()
 Get alignment value.
More...
 
Markup.EndingStyle GetCalloutLineEndingStyle ()
 Get line ending style of the start point in a callout line.
More...
 
PointFArray GetCalloutLinePoints ()
 Get a point of callout line points.
More...
 
DefaultAppearance GetDefaultAppearance ()
 Get default appearance data.
More...
 
int GetFillColor ()
 Get fill color.
More...
 
RectF GetInnerRect ()
 Get the inner rectangle.
More...
 
Rotation GetRotation ()
 Get current rotation value (in clockwise).
More...
 
Matrix2D GetTextMatrix ()
 
void Rotate (Rotation rotation)
 Rotate current annotation from current state with specified rotation value (in clockwise).
More...
 
void SetAlignment (Alignment alignment)
 Set alignment value.
More...
 
void SetCalloutLineEndingStyle (Markup.EndingStyle ending_style)
 Set line ending style of the start point in a callout line.
More...
 
void SetCalloutLinePoints (PointFArray point_array)
 Set points for callout line.
More...
 
bool SetDefaultAppearance (DefaultAppearance default_ap)
 Set default appearance data.
More...
 
void SetFillColor (int fill_color)
 Set fill color.
More...
 
void SetInnerRect (RectF inner_rect)
 Set the inner rectangle.
More...
 
void SetRotation (Rotation rotation)
 Set rotation value (in clockwise).
More...
 
void SetTextMatrix (Matrix2D text_matrix)
 
- Public Member Functions inherited from foxit.pdf.annots.Markup
 Markup (Annot annot)
 Constructor, with parent class object.
More...
 
 Markup ()
 Constructor.

 
Note AddReply ()
 Add a new reply to the end of reply list.
More...
 
void AddRichText (string content, RichTextStyle style)
 Add a new rich text string to the end.
More...
 
Note AddStateAnnot (string title, Markup.StateModel model, Markup.State state)
 Add a new state annotation.
More...
 
DateTime GetCreationDateTime ()
 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 ()
 Get intent name.
More...
 
float GetOpacity ()
 Get opacity value.
More...
 
Popup GetPopup ()
 Get related pop-up annotation.
More...
 
Note GetReply (int index)
 Get a reply by index.
More...
 
int GetReplyCount ()
 Count all replies.
More...
 
string GetRichTextContent (int index)
 Get text string of a rich text string specified by index.
More...
 
int GetRichTextCount ()
 Get the count of rich text strings.
More...
 
RichTextStyle GetRichTextStyle (int index)
 Get style data of a rich text string specified by index.
More...
 
NoteArray GetStateAnnots (Markup.StateModel model)
 Get all state annotations in a specified state model.
More...
 
string GetSubject ()
 Get subject string.
More...
 
string GetTitle ()
 Get title string.
More...
 
void InsertRichText (int index, string content, 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 (DateTime date_time)
 Set creation date time.
More...
 
void SetIntent (string intent)
 Set intent name.
More...
 
void SetOpacity (float opacity)
 Set opacity value.
More...
 
void SetPopup (Popup popup)
 Set related pop-up annotation.
More...
 
void SetRichTextContent (int index, string content)
 Set text string of a rich text string specified by index.
More...
 
void SetRichTextStyle (int index, RichTextStyle style)
 Set style data of a rich text string specified by index.
More...
 
void SetSubject (string subject)
 Set subject string.
More...
 
void SetTitle (string 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 (PDFPage page, PDFDictionary annot_dict)
 Constructor, with PDF page and annotation's PDF dictionary.
More...
 
 Annot (Annot annot)
 Constructor, with another annotation object.
More...
 
 Annot ()
 Constructor.

 
PDFStream GetAppearanceStream (Annot.AppearanceType type, string appearance_state)
 Get annotation's appearance stream with specified type and state.
More...
 
int GetBorderColor ()
 Get border color.
More...
 
BorderInfo GetBorderInfo ()
 Get border information.
More...
 
string GetContent ()
 Get content.
More...
 
RectI GetDeviceRect (Matrix2D matrix)
 Get annotation rectangle in device coordinate system.
More...
 
PDFDictionary GetDict ()
 Get annotation's dictionary object.
More...
 
Matrix2D GetDisplayMatrix (Matrix2D page_display_matrix)
 Get the display matrix, from PDF coordinate system to targeted device coordinate system.
More...
 
int GetFlags ()
 Get annotation flags.
More...
 
int GetIndex ()
 Get the index of current annotation in the page which current annotation belongs to.
More...
 
DateTime GetModifiedDateTime ()
 Get last modified date time.
More...
 
PDFDictionary GetOptionalContent ()
 Get the PDF dictionary of annotation's optional content.
More...
 
PDFPage GetPage ()
 Get the related PDF page.
More...
 
RectF GetRect ()
 Get rectangle, in PDF coordinate system.
More...
 
Annot.Type GetType ()
 Get actual annotation type of current annotation.
More...
 
string GetUniqueID ()
 Get unique ID.
More...
 
bool HasProperty (Annot.Property property)
 Whether current annotation has the specified annotation's property.
More...
 
bool IsEmpty ()
 Check whether current object is empty or not.
More...
 
bool IsMarkup ()
 Check if current annotation is a markup annotation.
More...
 
bool Move (RectF rect)
 Move current annotation to a new position, specified by a new rectangle in [PDF coordinate system] (foxit.pdf.PDFPage).
More...
 
bool RemoveProperty (Annot.Property property)
 Remove a specified annotation's property.
More...
 
bool ResetAppearanceStream ()
 Reset appearance stream.
More...
 
void SetBorderColor (int color)
 Set border color.
More...
 
void SetBorderInfo (BorderInfo border)
 Set border information.
More...
 
void SetContent (string content)
 Set content.
More...
 
void SetFlags (int flags)
 Set annotation flags.
More...
 
void SetModifiedDateTime (DateTime date_time)
 Set last modified date time.
More...
 
void SetUniqueID (string unique_id)
 Set unique ID.
More...
 

Additional Inherited Members

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

Detailed Description

A free text annotation displays text directly on the page. So free text annotation does not need a related pop-up annotation to show the text.
Free text annotation is a kind of markup annotation, so class FreeText is derived from class Markup , and also offers functions to get/set free text annotation's properties and reset appearance stream of a free text annotation.

Note
For a newly created free text annotation, if user calls function Annot.ResetAppearanceStream directly without setting any properties, the default appearance will be used:
border width = 1.0, border style = foxit.pdf.annots.BorderInfo.Style.e_Solid , border color = 0xFFFF0000 (red), opacity = 1.0, alignment = 0 (as left-justified), default appearance flags = foxit.pdf.annots.DefaultAppearance.DefAPFlags.e_FlagFont | foxit.pdf.annots.DefaultAppearance.DefAPFlags.e_FlagTextColor | foxit.pdf.annots.DefaultAppearance.DefAPFlags.e_FlagFontSize , default appearance font is created based on foxit.common.Font.StandardID.e_StdIDHelvetica , default appearance text size = 12, default appearance text color = 0xFF0000FF (blue).
See also
Markup

Constructor & Destructor Documentation

◆ FreeText()

foxit.pdf.annots.FreeText.FreeText ( Annot  annot)
inline

Constructor, with parent class object.

Parameters
[in]annotParent class object.

Member Function Documentation

◆ AllowTextOverflow()

void foxit.pdf.annots.FreeText.AllowTextOverflow ( bool  is_text_overflow)
inline

Decide whether to allow the text of callout to overflow or not.

This function is only useful when the intent name of a free text annotation is "FreeTextCallout".
If this function is not called for current freetext annotation object (whose intent name is "FreeTextCallout"), text is allowed to overflow by default.

Parameters
[in]is_text_overflowA boolean value to decide whether text content is allowed to overflow or not when the size of the callout rectangle is smaller than the size of the text content:
  • true means text content is allowed to overflow. So in this case, overflowed text content will be truncated.
  • false means text content is not allowed to overflow. So in this case, the callout rectangle will be adapted to contain the whole text content automatically.

Returns
None.

◆ GetAlignment()

Alignment foxit.pdf.annots.FreeText.GetAlignment ( )
inline

Get alignment value.

This property has effect on free text annotation's appearance.

Returns
The alignment value. Please refer to values starting from foxit.common.Alignment.e_AlignmentLeft and this would be one of these values.

◆ GetCalloutLineEndingStyle()

Markup.EndingStyle foxit.pdf.annots.FreeText.GetCalloutLineEndingStyle ( )
inline

Get line ending style of the start point in a callout line.

Only when the intent name of a free text annotation is "FreeTextCallout", this free text annotation can have line ending style property, and this property has effect on this kind of free text annotation's appearance.

Returns
The line ending style of the start point. Please refer to values starting from foxit.pdf.annots.Markup.EndingStyle.e_EndingStyleNone and this would be one of these values.

◆ GetCalloutLinePoints()

PointFArray foxit.pdf.annots.FreeText.GetCalloutLinePoints ( )
inline

Get a point of callout line points.

Only when the intent name of a free text annotation is "FreeTextCallout", this free text annotation can have callout line points property, and this property has effect on this kind of free text annotation's appearance. For a callout line, it can contain 2 or 3 points:

  • 2 points represent the starting point and ending point of the callout line.
  • 3 points represent the starting point, knee point, and ending point of the callout line.


Returns
A point array that represents the points used for callout line of a callout free text annotation.

◆ GetDefaultAppearance()

DefaultAppearance foxit.pdf.annots.FreeText.GetDefaultAppearance ( )
inline

Get default appearance data.

This property has effect on free text annotation's appearance. Default appearance data can be used in formatting text.

Returns
The default appearance data.

◆ GetFillColor()

int foxit.pdf.annots.FreeText.GetFillColor ( )
inline

Get fill color.

This property has effect on free text annotation's appearance. Fill color is used to fill the background of text box, and also for some callout line ending styles:
"Square", "Circle", "Diamond", "ClosedArrow", "RClosedArrow".

Returns
The fill color. Format: 0xRRGGBB. If no fill color can be found, 0x000000 will be returned.

◆ GetInnerRect()

RectF foxit.pdf.annots.FreeText.GetInnerRect ( )
inline

Get the inner rectangle.

This property has effect on free text annotation's appearance. For a free text annotation, inner rectangle is where the annotation's text should be displayed. The inner rectangle could be just the same as or less than the annotation's rectangle, and should never be larger than annotation's rectangle.

Returns
The inner rectangle.

◆ GetRotation()

Rotation foxit.pdf.annots.FreeText.GetRotation ( )
inline

Get current rotation value (in clockwise).

Returns
Current rotation value (in clockwise). Please refer to values starting from foxit.common.Rotation.e_Rotation0 and this would be one of these values.

◆ GetTextMatrix()

Matrix2D foxit.pdf.annots.FreeText.GetTextMatrix ( )
inline
Deprecated:
Current function has been deprecated since Foxit PDF SDK 7.4. This property will not have any effect on annotation's appearance any more.

This property has effect on free text annotation's appearance. This property can be used to change the skew of text's display.

Returns
Matrix used for text in default appearance.

◆ Rotate()

void foxit.pdf.annots.FreeText.Rotate ( Rotation  rotation)
inline

Rotate current annotation from current state with specified rotation value (in clockwise).

Parameters
[in]rotationRotation value which represents the degree used to rotate current annotation from current state in clockwise. Please refer to values starting from foxit.common.Rotation.e_Rotation0 and this should be one of these values except foxit.common.Rotation.e_RotationUnknown . Specially, if the input value is foxit.common.Rotation.e_Rotation0 (which means not to rotate current annotation), current function will do nothing.
Returns
true means success, while false means failure.

◆ SetAlignment()

void foxit.pdf.annots.FreeText.SetAlignment ( Alignment  alignment)
inline

Set alignment value.

This property has effect on free text annotation's appearance. If user wants the new alignment has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting new alignment.

Parameters
[in]alignmentThe new alignment value. Please refer to values starting from foxit.common.Alignment.e_AlignmentLeft and this should be one of these values.
If other values is used to set, foxit.common.Alignment.e_AlignmentLeft will be used by default.
Returns
None.

◆ SetCalloutLineEndingStyle()

void foxit.pdf.annots.FreeText.SetCalloutLineEndingStyle ( Markup.EndingStyle  ending_style)
inline

Set line ending style of the start point in a callout line.

Only when the intent name of a free text annotation is "FreeTextCallout", this free text annotation can have line ending style property, and this property has effect on this kind of free text annotation's appearance.
If user wants the new line ending style has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting new line ending style.

Parameters
[in]ending_styleThe line ending style for the start point to be set. Please refer to values starting from foxit.pdf.annots.Markup.EndingStyle.e_EndingStyleNone and this should be one of these values.
Returns
None.

◆ SetCalloutLinePoints()

void foxit.pdf.annots.FreeText.SetCalloutLinePoints ( PointFArray  point_array)
inline

Set points for callout line.

Only when the intent name of a free text annotation is "FreeTextCallout", this free text annotation can have callout line points property, and this property has effect on this kind of free text annotation's appearance. For a callout line, it can contain 2 or 3 points:

  • 2 points represent the starting point and ending point of the callout line.
  • 3 points represent the starting point, knee point, and ending point of the callout line.

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

Parameters
[in]point_arrayNew point array that specifies the starting point, knee point(if any) and ending point of the callout line. The count of elements should be 2 or 3: 2 points meand starting point and ending point; 3 points means the startign point, knee point and ending point.
If the count of elements is above 3, only the first 3 points will be used to set callout line.
Returns
None.

◆ SetDefaultAppearance()

bool foxit.pdf.annots.FreeText.SetDefaultAppearance ( DefaultAppearance  default_ap)
inline

Set default appearance data.

This property has effect on free text annotation's appearance. Default appearance data can be used in formatting text.
If user wants the new default appearance data has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting new default appearance data.

Parameters
[in]default_apThe new default appearance data to be set. flags of input data can be used to decide which information is/are to be updated with the new data; for those no updated data, they will keep to use old data.
Returns
true means success, while false means failure. Specially, this function will return false if the parameter default_ap contains any incorrect value, for example:

◆ SetFillColor()

void foxit.pdf.annots.FreeText.SetFillColor ( int  fill_color)
inline

Set fill color.

This property has effect on free text annotation's appearance. Fill color is used to fill the background of text box, and also for some callout line ending styles:
"Square", "Circle", "Diamond", "ClosedArrow", "RClosedArrow".
If user wants the new fill color has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting new fill color.

Parameters
[in]fill_colorNew fill color to be set. Format: 0xRRGGBB.
Returns
None.

◆ SetInnerRect()

void foxit.pdf.annots.FreeText.SetInnerRect ( RectF  inner_rect)
inline

Set the inner rectangle.

This property has effect on free text annotation's appearance. For a free text annotation, inner rectangle is where the annotation's text should be displayed. The inner rectangle could be just the same as or less than the annotation's rectangle, and should never be larger than annotation's rectangle.
If user wants the new inner rectangle has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting new inner rectangle.

Parameters
[in]inner_rectNew inner rectangle to be set. It should be same as or less than annotation's rectangle.
Returns
None.

◆ SetRotation()

void foxit.pdf.annots.FreeText.SetRotation ( Rotation  rotation)
inline

Set rotation value (in clockwise).

This property has effect on free text annotation's appearance. If user wants the new rotation has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting new rotation.

Parameters
[in]rotationNew rotation value (in clockwise) to be set to current free text annotation. Please refer to values starting from foxit.common.Rotation.e_Rotation0 and this should be one of these values except foxit.common.Rotation.e_RotationUnknown .
Returns
None.

◆ SetTextMatrix()

void foxit.pdf.annots.FreeText.SetTextMatrix ( Matrix2D  text_matrix)
inline
Deprecated:
Current function has been deprecated since Foxit PDF SDK 7.4. This property will not have any effect on annotation's appearance any more.

This property has effect on free text annotation's appearance. This property can be used to change the skew of text's display.
If user wants the new text matrix has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting new text matrix.

Parameters
[in]text_matrixThe new text matrix.
Returns
None.