Foxit PDF SDK

Public Member Functions | List of all members
com.foxit.sdk.pdf.annots.Ink Class Reference
Inheritance diagram for com.foxit.sdk.pdf.annots.Ink:

## Public Member Functions
| Ink ()
| Constructor.
| Ink (Annot annot)
| Constructor, with parent class object. More...
synchronized void | delete ()
| Clean up related C++ resources immediately. More...
void | enableUseBezier (boolean use_bezier) throws com.foxit.sdk.PDFException
| Enable to use bezier spline to generate ink path for ink annotation's appearance. More...
Path | getInkList () throws com.foxit.sdk.PDFException
| Get ink list data. More...
void | setInkList (Path ink_list) throws com.foxit.sdk.PDFException
| Set ink list data. More...
Public Member Functions inherited from com.foxit.sdk.pdf.annots.Markup
| Markup (Annot annot)
| Constructor, with parent class object. More...
| Markup ()
| Constructor.
Note | addReply () throws com.foxit.sdk.PDFException
| Add a new reply to the end of reply list. More...
void | addRichText (String content, RichTextStyle style) throws com.foxit.sdk.PDFException
| Add a new rich text string to the end. More...
Note | addStateAnnot (String title, int model, int state) throws com.foxit.sdk.PDFException
| Add a new state annotation. More...
synchronized void | delete ()
| Clean up related C++ resources immediately. More...
float | getBorderOpacity () throws com.foxit.sdk.PDFException
| Get the border opacity of the annotation. More...
DateTime | getCreationDateTime () throws com.foxit.sdk.PDFException
| Get creation date time. More...
float | getFillOpacity () throws com.foxit.sdk.PDFException
| Get the fill opacity of the annotation. More...
MarkupArray | getGroupElements () throws com.foxit.sdk.PDFException
| Get an element (as markup annotation) from the group that current markup annotation belongs to. More...
Markup | getGroupHeader () throws com.foxit.sdk.PDFException
| Get the header annotation (as primary annotation) of the group that current markup annotation belongs to. More...
String | getIntent () throws com.foxit.sdk.PDFException
| Get intent name. More...
float | getOpacity () throws com.foxit.sdk.PDFException
| Get opacity value. More...
Popup | getPopup () throws com.foxit.sdk.PDFException
| Get related pop-up annotation. More...
Note | getReply (int index) throws com.foxit.sdk.PDFException
| Get a reply by index. More...
int | getReplyCount () throws com.foxit.sdk.PDFException
| Count all replies. More...
String | getRichTextContent (int index) throws com.foxit.sdk.PDFException
| Get text string of a rich text string specified by index. More...
int | getRichTextCount () throws com.foxit.sdk.PDFException
| Get the count of rich text strings. More...
RichTextStyle | getRichTextStyle (int index) throws com.foxit.sdk.PDFException
| Get style data of a rich text string specified by index. More...
NoteArray | getStateAnnots (int model) throws com.foxit.sdk.PDFException
| Get all state annotations in a specified state model. More...
String | getSubject () throws com.foxit.sdk.PDFException
| Get subject string. More...
String | getTitle () throws com.foxit.sdk.PDFException
| Get title string. More...
void | insertRichText (int index, String content, RichTextStyle style) throws com.foxit.sdk.PDFException
| Insert a new rich text string to the place which is specified by index. More...
boolean | isGrouped () throws com.foxit.sdk.PDFException
| Check whether current markup annotation is in a group or not. More...
boolean | removeAllReplies () throws com.foxit.sdk.PDFException
| Remove all the replies. More...
boolean | removeAllStateAnnots () throws com.foxit.sdk.PDFException
| Remove all the state annotations. More...
boolean | removePopup () throws com.foxit.sdk.PDFException
| Remove related pop-up annotation. More...
boolean | removeReply (int index) throws com.foxit.sdk.PDFException
| Remove a reply by index. More...
void | removeRichText (int index) throws com.foxit.sdk.PDFException
| Remove a rich text string specified by index. More...
void | setBorderOpacity (float opacity) throws com.foxit.sdk.PDFException
| Set the border opacity of the annotation. More...
void | setCreationDateTime (DateTime date_time) throws com.foxit.sdk.PDFException
| Set creation date time. More...
void | setFillOpacity (float opacity) throws com.foxit.sdk.PDFException
| Set the fill opacity of the annotation. More...
void | setIntent (String intent) throws com.foxit.sdk.PDFException
| Set intent name. More...
void | setOpacity (float opacity) throws com.foxit.sdk.PDFException
| Set opacity value. More...
void | setPopup (Popup popup) throws com.foxit.sdk.PDFException
| Set related pop-up annotation. More...
void | setRichTextContent (int index, String content) throws com.foxit.sdk.PDFException
| Set text string of a rich text string specified by index. More...
void | setRichTextStyle (int index, RichTextStyle style) throws com.foxit.sdk.PDFException
| Set style data of a rich text string specified by index. More...
void | setSubject (String subject) throws com.foxit.sdk.PDFException
| Set subject string. More...
void | setTitle (String title) throws com.foxit.sdk.PDFException
| Set title string. More...
boolean | ungroup () throws com.foxit.sdk.PDFException
| Ungroup current markup annotation from the group it belongs to. More...
Public Member Functions inherited from com.foxit.sdk.pdf.annots.Annot
| Annot (PDFPage page, PDFDictionary annot_dict) throws com.foxit.sdk.PDFException
| Constructor, with PDF page and annotation's PDF dictionary. More...
| Annot (Annot annot)
| Constructor, with another annotation object. More...
| Annot ()
| Constructor.
synchronized void | delete ()
| Clean up related C++ resources immediately. More...
PDFStream | getAppearanceStream (int type, String appearance_state) throws com.foxit.sdk.PDFException
| Get annotation's appearance stream with specified type and state. More...
long | getBorderColor () throws com.foxit.sdk.PDFException
| Get border color. More...
BorderInfo | getBorderInfo () throws com.foxit.sdk.PDFException
| Get border information. More...
String | getContent () throws com.foxit.sdk.PDFException
| Get content. More...
RectI | getDeviceRect (Matrix2D matrix) throws com.foxit.sdk.PDFException
| Get annotation rectangle in device coordinate system. More...
PDFDictionary | getDict () throws com.foxit.sdk.PDFException
| Get annotation's dictionary object. More...
Matrix2D | getDisplayMatrix (Matrix2D page_display_matrix) throws com.foxit.sdk.PDFException
| Get the display matrix, from PDF coordinate system to targeted device coordinate system. More...
int | getFlags () throws com.foxit.sdk.PDFException
| Get annotation flags. More...
int | getIndex () throws com.foxit.sdk.PDFException
| Get the index of current annotation in the page which current annotation belongs to. More...
DateTime | getModifiedDateTime () throws com.foxit.sdk.PDFException
| Get last modified date time. More...
PDFDictionary | getOptionalContent () throws com.foxit.sdk.PDFException
| Get the PDF dictionary of annotation's optional content. More...
PDFPage | getPage () throws com.foxit.sdk.PDFException
| Get the related PDF page. More...
RectF | getRect () throws com.foxit.sdk.PDFException
| Get rectangle, in PDF coordinate system. More...
int | getType () throws com.foxit.sdk.PDFException
| Get actual annotation type of current annotation. More...
String | getUniqueID () throws com.foxit.sdk.PDFException
| Get unique ID. More...
boolean | hasProperty (int property) throws com.foxit.sdk.PDFException
| Whether current annotation has the specified annotation's property. More...
boolean | isEmpty ()
| Check whether current object is empty or not. More...
boolean | isMarkup () throws com.foxit.sdk.PDFException
| Check if current annotation is a markup annotation. More...
boolean | move (RectF rect) throws com.foxit.sdk.PDFException
| Move current annotation to a new position, specified by a new rectangle in PDF coordinate system. More...
boolean | move (RectF rect, boolean is_reset_appearance) throws com.foxit.sdk.PDFException
| Move current annotation to a new position, specified by a new rectangle in PDF coordinate system. More...
boolean | removeProperty (int property) throws com.foxit.sdk.PDFException
| Remove a specified annotation's property. More...
boolean | resetAppearanceStream () throws com.foxit.sdk.PDFException
| Reset appearance stream. More...
boolean | resetAppearanceStream (boolean is_generate_new_appearance_obj) throws com.foxit.sdk.PDFException
| Reset appearance stream. More...
void | setBorderColor (long color) throws com.foxit.sdk.PDFException
| Set border color. More...
void | setBorderInfo (BorderInfo border) throws com.foxit.sdk.PDFException
| Set border information. More...
void | setContent (String content) throws com.foxit.sdk.PDFException
| Set content. More...
void | setFlags (int flags) throws com.foxit.sdk.PDFException
| Set annotation flags. More...
void | setModifiedDateTime (DateTime date_time) throws com.foxit.sdk.PDFException
| Set last modified date time. More...
void | setUniqueID (String unique_id) throws com.foxit.sdk.PDFException
| Set unique ID. More...
Public Member Functions inherited from com.foxit.sdk.common.Base
synchronized void | delete ()
| Clean up related C++ resources immediately. More...

## Additional Inherited Members
Static Public Attributes inherited from com.foxit.sdk.pdf.annots.Markup
static final int | e_EndingStyleButt = 6
| A short line at the endpoint perpendicular to the line itself.
static final int | e_EndingStyleCircle = 2
| A circle filled with the annotation's interior color if any.
static final int | e_EndingStyleClosedArrow = 5
| Two short lines meeting in an acute angle as in the OpenArrow style and connected by a third line to form a triangular closed arrowhead filled with the annotation's interior color if any.
static final int | e_EndingStyleDiamond = 3
| A diamond shape filled with the annotation's interior color if any.
static final int | e_EndingStyleNone = 0
| No special line ending.
static final int | e_EndingStyleOpenArrow = 4
| Two short lines meeting in an acute angle to form an open arrowhead.
static final int | e_EndingStyleRClosedArrow = 8
| A triangular closed arrowhead in the reverse direction from ClosedArrow.
static final int | e_EndingStyleROpenArrow = 7
| Two short lines in the reverse direction from OpenArrow.
static final int | e_EndingStyleSlash = 9
| A short line at the endpoint approximately 30 degrees clockwise from perpendicular to the line itself.
static final int | e_EndingStyleSquare = 1
| A square filled with the annotation's interior color if any.
static final int | e_MeasureTypeA = 3
| Measurement of area.
static final int | e_MeasureTypeD = 2
| Measurement of distance in any direction.
static final int | e_MeasureTypeS = 5
| Measurement of the slope of a line.
static final int | e_MeasureTypeT = 4
| Measurement of angles.
static final int | e_MeasureTypeX = 0
| Measurement of change along the x axis.
static final int | e_MeasureTypeY = 1
| Measurement of change along the y axis.
static final int | e_StateAccepted = 3
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelReview ) The user agrees with the change.
static final int | e_StateCancelled = 5
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelReview ) The change has been cancelled.
static final int | e_StateCompleted = 6
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelReview ) The change has been completed.
static final int | e_StateDeferred = 7
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelReview ) The change has been deferred.
static final int | e_StateFuture = 8
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelReview ) The change will be working in the future.
static final int | e_StateMarked = 1
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelMarked ) The annotation has been marked by the user.
static final int | e_StateModelMarked = 1
| Markup annotation state model: marked.
static final int | e_StateModelReview = 2
| Markup annotation state model: review.
static final int | e_StateNone = 0
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelReview ) The user has indicated nothing about the change.
static final int | e_StateRejected = 4
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelReview ) The user disagrees with the change.
static final int | e_StateUnmarked = 2
| (Used with state model com.foxit.sdk.pdf.annots.Markup.e_StateModelMarked ) The annotation has not been marked by the user.
Static Public Attributes inherited from com.foxit.sdk.pdf.annots.Annot
static final int | e_3D = 25
| Annotation type: 3D annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_AppearanceTypeDown = 2
| Annotation's down appearance.
static final int | e_AppearanceTypeNormal = 0
| Annotation's normal appearance.
static final int | e_AppearanceTypeRollover = 1
| Annotation's rollover appearance.
static final int | e_Caret = 14
| Annotation type: caret annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Circle = 6
| Annotation type: circle annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_FileAttachment = 17
| Annotation type: file attachment annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_FlagHidden = 0x0002
| Annotation flag: hidden. More...
static final int | e_FlagInvisible = 0x0001
| Annotation flag: invisible. More...
static final int | e_FlagLocked = 0x0080
| Annotation flag: locked. More...
static final int | e_FlagLockedContents = 0x0200
| Annotation flag: locked contents. More...
static final int | e_FlagNoRotate = 0x0010
| Annotation flag: no rotate. More...
static final int | e_FlagNoView = 0x0020
| Annotation flag: no view. More...
static final int | e_FlagNoZoom = 0x0008
| Annotation flag: no zoom. More...
static final int | e_FlagPrint = 0x0004
| Annotation flag: print. More...
static final int | e_FlagReadOnly = 0x0040
| Annotation flag: read only. More...
static final int | e_FlagToggleNoView = 0x0100
| Annotation flag: toggle no view. More...
static final int | e_FreeText = 3
| Annotation type: free text annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Highlight = 9
| Annotation type: highlight annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_HighlightingInvert = 1
| Highlighting mode: Invert, which is to invert the contents of the annotation rectangle.
static final int | e_HighlightingNone = 0
| Highlighting mode: No highlighting.
static final int | e_HighlightingOutline = 2
| Highlighting mode: Outline, which is to invert the annotation's border.
static final int | e_HighlightingPush = 3
| Highlighting mode: Push, which is to display the annotation's down appearance, if any.
static final int | e_HighlightingToggle = 4
| Highlighting mode: Toggle. This is only useful for widget annotation.
static final int | e_Ink = 15
| Annotation type: ink annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Line = 4
| Annotation type: line annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Link = 2
| Annotation type: link annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_MKEntryBackgroundColor = 2
| Background color entry. "BG" in MK dictionary.
static final int | e_MKEntryBorderColor = 1
| Border color entry. "BC" in MK dictionary.
static final int | e_MKEntryDownCaption = 5
| Down caption (or alternate caption) entry. "AC" in MK dictionary. More...
static final int | e_MKEntryDownIcon = 8
| Down icon (or alternate icon) entry. "IX" in MK dictionary. More...
static final int | e_MKEntryIconCaptionRelation = 10
| Icon and caption relation entry. "TP" in MK dictionary. More...
static final int | e_MKEntryIconFit = 9
| Icon fit information entry. "IF" in MK dictionary. More...
static final int | e_MKEntryNormalCaption = 3
| Normal caption entry. "CA" in MK dictionary. More...
static final int | e_MKEntryNormalIcon = 6
| Normal icon entry. "I" in MK dictionary. More...
static final int | e_MKEntryRolloverCaption = 4
| Rollover caption entry. "RC" in MK dictionary. More...
static final int | e_MKEntryRolloverIcon = 7
| Rollover icon entry. "RI" in MK dictionary. More...
static final int | e_MKEntryRotation = 0
| Rotation entry. "R" in MK dictionary.
static final int | e_MKRelationCaptionAboveIcon = 3
| Caption above the icon.
static final int | e_MKRelationCaptionBelowIcon = 2
| Caption below the icon.
static final int | e_MKRelationCaptionLeft = 5
| Caption to the left of the icon.
static final int | e_MKRelationCaptionOvrlayOnIcon = 6
| Caption overlaid directly on the icon.
static final int | e_MKRelationCaptionRight = 4
| Caption to the right of the icon.
static final int | e_MKRelationNoCaption = 1
| No caption; icon only.
static final int | e_MKRelationNoIcon = 0
| No icon; captin only.
static final int | e_Movie = 19
| Annotation type: movie annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Note = 1
| Annotation type: note annotation, which is just "Text" annotation - one of standard annotation in <PDF reference 1.7>.
static final int | e_PagingSeal = 29
| Annotation type: paging seal annotation. A Foxit PDF SDK custom annotation type (not a standard annotation type).
static final int | e_Polygon = 7
| Annotation type: polygon annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_PolyLine = 8
| Annotation type: polyline annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Popup = 26
| Annotation type: pop-up annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_PrinterMark = 22
| Annotation type: printer's mark annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_PropertyBorderColor = 2
| Annotation property: border color. More...
static final int | e_PropertyCreationDate = 1
| Annotation property: creation date. More...
static final int | e_PropertyFillColor = 3
| Annotation property: fill color. More...
static final int | e_PropertyModifiedDate = 0
| Annotation property: modified date.
static final int | e_PSInk = 16
| Annotation type: pressure sensitive ink annotation.
static final int | e_Redact = 27
| Annotation type: redact annotation.
static final int | e_RichMedia = 28
| Annotation type: rich media annotation.
static final int | e_Screen = 21
| Annotation type: screen annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Sound = 18
| Annotation type: sound annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Square = 5
| Annotation type: square annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Squiggly = 11
| Annotation type: squiggly annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Stamp = 13
| Annotation type: stamp annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_StrikeOut = 12
| Annotation type: strikeout annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_TrapNet = 23
| Annotation type: trap network annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Underline = 10
| Annotation type: underline annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_UnknownType = 0
| Annotation type: unknown.
static final int | e_Watermark = 24
| Annotation type: watermark annotation. One of standard annotation in <PDF reference 1.7>.
static final int | e_Widget = 20
| Annotation type: widget annotation. One of standard annotation in <PDF reference 1.7>. More...

## Detailed Description

An ink annotation represents a freehand "scribble" composed of one or more disjoint paths.
Ink annotation is a kind of markup annotation, so class Ink is derived from class Markup , offers functions to get/set ink annotation's properties and also and reset appearance stream of an ink annotation.
For an ink annotation, ink list property is required. So please ensure that an ink annotation has valid ink list property before resetting its appearance stream; otherwise the ink annotation cannot be reset appearance stream.

Note
  For a newly created ink annotation, if user calls function Annot.resetAppearanceStream (inherited from Ink 's parent class) directly after setting required ink list property and not setting any other properties, the default appearance will be used:
  border width = 2.0, border style = com.foxit.sdk.pdf.annots.BorderInfo.e_Solid , border color = 0xFFFF0000 (red), opacity = 1.0.

See also
  Markup

## Constructor & Destructor Documentation

## ◆ Ink()

com.foxit.sdk.pdf.annots.Ink.Ink | ( | Annot | annot | ) |

Constructor, with parent class object.

Parameters

  [in] | annot | Parent class object.

## Member Function Documentation

## ◆ delete()

synchronized void com.foxit.sdk.pdf.annots.Ink.delete | ( |  | ) |

Clean up related C++ resources immediately.

Returns
  None.

Note
  Once this function is called, current object cannot be used anymore.

## ◆ enableUseBezier()

void com.foxit.sdk.pdf.annots.Ink.enableUseBezier | ( | boolean | use_bezier | ) | throws com.foxit.sdk.PDFException

Enable to use bezier spline to generate ink path for ink annotation's appearance.

If this function is not called, Foxit PDF SDK will use bezier spline to generate ink path by default.

Parameters

  [in] | use_bezier | A boolean to decide whether to use bezier spline or not: true means to use bezier spline to generate ink path, while false means to use straight line to connect adjacent points to generate ink path.

Returns
  None.

## ◆ getInkList()

Path com.foxit.sdk.pdf.annots.Ink.getInkList | ( |  | ) | throws com.foxit.sdk.PDFException

Get ink list data.

Ink list property is required for an ink annotation and this property has effect on ink annotation's appearance. The ink list contains one or more stroked path.
In Foxit PDF SDK, class com.foxit.sdk.common.Path is used to represent the ink list data, but the point types for path object have been specially simplified for ink list. Only com.foxit.sdk.common.Path.e_TypeMoveTo and com.foxit.sdk.common.Path.e_TypeLineTo types are used for points in the ink list:

- a point with type com.foxit.sdk.common.Path.e_TypeMoveTo means that this point is the start point of a stroked path. Usually the first in path object should be this type.

- a point with type com.foxit.sdk.common.Path.e_TypeLineTo means that this point is in a stroked path, which is started by a point with type com.foxit.sdk.common.Path.e_TypeMoveTo , and when function Annot.resetAppearanceStream (inherited from Ink's parent class) is called, Foxit PDF SDK will connect this point with other points by curves.

Operations such as move the ink annotation, or set a new ink path to this annotation will update the ink path data, so that the previous returned path object would become invalid. In this case, user should call this function again to obtain the new path object.

Returns
  The ink list data. If the return value of function common.Path.isEmpty for the returned path object is true, that means no ink list data can be found.

## ◆ setInkList()

void com.foxit.sdk.pdf.annots.Ink.setInkList | ( | Path | ink_list | ) | throws com.foxit.sdk.PDFException

Set ink list data.

Ink list property is required for an ink annotation and this property has effect on ink annotation's appearance. The ink list contains one or more stroked path.
In Foxit PDF SDK, class com.foxit.sdk.common.Path is used to represent the ink list data, but the point types for path object have been specially simplified for ink list. Only com.foxit.sdk.common.Path.e_TypeMoveTo and com.foxit.sdk.common.Path.e_TypeLineTo types are used for points in the ink list:

- a point with type com.foxit.sdk.common.Path.e_TypeMoveTo means that this point is the start point of a stroked path. Usually the first in path object should be this type.

- a point with type com.foxit.sdk.common.Path.e_TypeLineTo means that this point is in a stroked path, which is started by a point with with type com.foxit.sdk.common.Path.e_TypeMoveTo , and when function Annot.resetAppearanceStream (inherited from Ink's parent class) is called, Foxit PDF SDK will connect this point with other points by curves.

Specially, if input parameter ink_list contains bezier points (for example, added by function common.Path.cubicBezierTo ), the control points will be ignored and only the target point will be used in the ink list data.
User is strongly recommended to pass a valid path object only with point types com.foxit.sdk.common.Path.e_TypeMoveTo and com.foxit.sdk.common.Path.e_TypeLineTo .
If user wants the effect to be shown in annotation's appearance, please call function Annot.resetAppearanceStream after this function.

Parameters

  [in] | ink_list | New path object which specifies the new list data.

Returns
  None.