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

Public Member Functions

 PolyLine ()
 Constructor.
 
 PolyLine (Annot annot)
 Constructor, with parent class object. More...
 
Markup.EndingStyle GetLineEndStyle ()
 Get line ending style of the end point. More...
 
Markup.EndingStyle GetLineStartStyle ()
 Get line ending style of the start point. More...
 
float GetMeasureConversionFactor (Markup.MeasureType measure_type)
 Get the conversion factor for measuring. More...
 
string GetMeasureRatio ()
 Get the scale ratio string for measuring. More...
 
string GetMeasureUnit (Markup.MeasureType measure_type)
 Get the label for displaying the units for measuring. More...
 
int GetStyleFillColor ()
 Get fill color for some line ending styles. More...
 
PointFArray GetVertexes ()
 Get vertexes. More...
 
void SetLineEndStyle (Markup.EndingStyle ending_style)
 Set line ending style of the end point. More...
 
void SetLineStartStyle (Markup.EndingStyle starting_style)
 Set line ending style of the start point. More...
 
void SetMeasureConversionFactor (Markup.MeasureType measure_type, float factor)
 Set the conversion factor for measuring. More...
 
void SetMeasureRatio (string ratio)
 Set the scale ratio string for measuring. More...
 
void SetMeasureUnit (Markup.MeasureType measure_type, string unit)
 Set the label for displaying the units for measuring. More...
 
void SetStyleFillColor (int fill_color)
 Set fill color for some line ending styles. More...
 
void SetVertexes (PointFArray vertexes)
 Set vertexes. More...
 
- 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...
 
Note AddStateAnnot (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...
 
Note GetStateAnnot (Markup.StateModel model, int index)
 Get a state annotation, under a specified state model. More...
 
int GetStateAnnotCount (Markup.StateModel model)
 Get the count of state annotations, under a specified state model. More...
 
string GetSubject ()
 Get subject string. More...
 
string GetTitle ()
 Get title string. 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 state annotations. More...
 
bool RemoveReply (int index)
 Remove a reply 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 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 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 polyline annotation (PDF 1.5) is similar to a polygon, except that the first and last vertex are not implicitly connected.
Polyline annotation is a kind of markup annotation, so class PolyLine is derived from class Markup , and also offers functions to get/set polyline annotation's properties and reset appearance stream of a polyline annotation.
For a polyline annotation, vertexes property is required. So please ensure that a polyline annotation has valid vertexes property before resetting its appearance stream; otherwise the polyline annotation cannot be reset appearance stream.

Note
For a newly created polyline annotation, if user calls function Annot.ResetAppearanceStream directly after setting required vertexes property and not setting any other properties, the default appearance will be used:
border width = 2.0, border style = foxit.pdf.annots.BorderInfo.Style.e_Solid , border color = 0xFFFF0000 (red), opacity = 1.0.
See also
Markup

Constructor & Destructor Documentation

◆ PolyLine()

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

Constructor, with parent class object.

Parameters
[in]annotParent class object.

Member Function Documentation

◆ GetLineEndStyle()

Markup.EndingStyle foxit.pdf.annots.PolyLine.GetLineEndStyle ( )
inline

Get line ending style of the end point.

This property has effect on polyline annotation's appearance.

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

◆ GetLineStartStyle()

Markup.EndingStyle foxit.pdf.annots.PolyLine.GetLineStartStyle ( )
inline

Get line ending style of the start point.

This property has effect on polyline 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.

◆ GetMeasureConversionFactor()

float foxit.pdf.annots.PolyLine.GetMeasureConversionFactor ( Markup.MeasureType  measure_type)
inline

Get the conversion factor for measuring.

A polyline annotation may have a measure dictionary that specifies an alternate coordinate system for a region of a page. Please refer to P745 in <PDF Reference 1.7> for more details.

Parameters
[in]measure_typeMeasure type. Please refer to values starting from foxit.pdf.annots.Markup.MeasureType.e_MeasureTypeX and this should be one of these values.
Returns
The conversion factor.

◆ GetMeasureRatio()

string foxit.pdf.annots.PolyLine.GetMeasureRatio ( )
inline

Get the scale ratio string for measuring.

A polyline annotation may have a measure dictionary that specifies an alternate coordinate system for a region of a page. Scale ratio string expresses the scale radio of the drawing in the region. Please refer to P745 in <PDF Reference 1.7> for more details.

Returns
A utf-8 byte string that expresses the scale ratio.

◆ GetMeasureUnit()

string foxit.pdf.annots.PolyLine.GetMeasureUnit ( Markup.MeasureType  measure_type)
inline

Get the label for displaying the units for measuring.

A polyline annotation may have a measure dictionary that specifies an alternate coordinate system for a region of a page. Please refer to P745 in <PDF Reference 1.7> for more details.

Parameters
[in]measure_typeMeasure type. Please refer to values starting from foxit.pdf.annots.Markup.MeasureType.e_MeasureTypeX and this would be one of these values.
Returns
A utf-8 text string that represents a label for displaying the units.

◆ GetStyleFillColor()

int foxit.pdf.annots.PolyLine.GetStyleFillColor ( )
inline

Get fill color for some line ending styles.

This property has effect on polyline annotation's appearance when the line ending style is one of following styles:
"Square", "Circle", "Diamond", "ClosedArrow", "RClosedArrow".

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

◆ GetVertexes()

PointFArray foxit.pdf.annots.PolyLine.GetVertexes ( )
inline

Get vertexes.

Vertexes property is required for a polyline annotation and this property has effect on polyline annotation's appearance.

Returns
A point array that represents the vertexes.

◆ SetLineEndStyle()

void foxit.pdf.annots.PolyLine.SetLineEndStyle ( Markup.EndingStyle  ending_style)
inline

Set line ending style of the end point.

This property has effect on polyline annotation's appearance. If user wants the new line ending style of end point has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting the new line ending style of end point.

Parameters
[in]ending_styleThe line ending style for the end 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.

◆ SetLineStartStyle()

void foxit.pdf.annots.PolyLine.SetLineStartStyle ( Markup.EndingStyle  starting_style)
inline

Set line ending style of the start point.

This property has effect on polyline annotation's appearance. If user wants the new line ending style of start point has effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting the new line ending style of start point.

Parameters
[in]starting_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.

◆ SetMeasureConversionFactor()

void foxit.pdf.annots.PolyLine.SetMeasureConversionFactor ( Markup.MeasureType  measure_type,
float  factor 
)
inline

Set the conversion factor for measuring.

A polyline annotation may have a measure dictionary that specifies an alternate coordinate system for a region of a page. Please refer to P745 in <PDF Reference 1.7> for more details.

Parameters
[in]measure_typeMeasure type. Please refer to values starting from foxit.pdf.annots.Markup.MeasureType.e_MeasureTypeX and this should be one of these values.
[in]factorThe conversion factor.
Returns
None.

◆ SetMeasureRatio()

void foxit.pdf.annots.PolyLine.SetMeasureRatio ( string  ratio)
inline

Set the scale ratio string for measuring.

A polyline annotation may have a measure dictionary that specifies an alternate coordinate system for a region of a page. Scale ratio string expresses the scale radio of the drawing in the region. Please refer to P745 in <PDF Reference 1.7> for more details.

Parameters
[in]ratioA utf-8 byte string expressing the scale ratio. The string should be like: "1/4 in = 1 ft", indicating that 1/4 inches in default user space is equivalent to 1 foot in real-world measurements.
Returns
None.

◆ SetMeasureUnit()

void foxit.pdf.annots.PolyLine.SetMeasureUnit ( Markup.MeasureType  measure_type,
string  unit 
)
inline

Set the label for displaying the units for measuring.

A polyline annotation may have a measure dictionary that specifies an alternate coordinate system for a region of a page. Please refer to P745 in <PDF Reference 1.7> for more details.

Parameters
[in]measure_typeMeasure type. Please refer to values starting from foxit.pdf.annots.Markup.MeasureType.e_MeasureTypeX and this would be one of these values.
[in]unitA utf-8 text string that specifies a label for displaying the units.
Returns
None.

◆ SetStyleFillColor()

void foxit.pdf.annots.PolyLine.SetStyleFillColor ( int  fill_color)
inline

Set fill color for some line ending styles.

This property has effect on polyline annotation's appearance when the line ending style of start point or end point is one of following styles:
"Square", "Circle", "Diamond", "ClosedArrow", "RClosedArrow".

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

◆ SetVertexes()

void foxit.pdf.annots.PolyLine.SetVertexes ( PointFArray  vertexes)
inline

Set vertexes.

Vertexes property is required for a polyline annotation and this property has effect on polyline annotation's appearance. If user wants the new vertexes have effect on annotation's appearance, please call function Annot.ResetAppearanceStream after setting the new vertexes.

Parameters
[in]vertexesA valid point array of vertexes. It should contains at least 2 points as vertexes.
Returns
None.