Class PDAnnotationLine
- java.lang.Object
-
- org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotation
-
- org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotationMarkup
-
- org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotationLine
-
- All Implemented Interfaces:
COSObjectable
public class PDAnnotationLine extends PDAnnotationMarkup
This is the class that represents a line annotation. Introduced in PDF 1.3 specification
-
-
Field Summary
Fields Modifier and Type Field Description private PDAppearanceHandler
customAppearanceHandler
static java.lang.String
IT_LINE_ARROW
Constant for annotation intent of Arrow.static java.lang.String
IT_LINE_DIMENSION
Constant for annotation intent of a dimension line.static java.lang.String
LE_BUTT
Constant for a butt line ending.static java.lang.String
LE_CIRCLE
Constant for a circle line ending.static java.lang.String
LE_CLOSED_ARROW
Constant for a closed arrow line ending.static java.lang.String
LE_DIAMOND
Constant for a diamond line ending.static java.lang.String
LE_NONE
Constant for no line ending.static java.lang.String
LE_OPEN_ARROW
Constant for a open arrow line ending.static java.lang.String
LE_R_CLOSED_ARROW
Constant for a reversed closed arrow line ending.static java.lang.String
LE_R_OPEN_ARROW
Constant for a reversed open arrow line ending.static java.lang.String
LE_SLASH
Constant for a slash line ending.static java.lang.String
LE_SQUARE
Constant for a square line ending.static java.lang.String
SUB_TYPE
The type of annotation.-
Fields inherited from class org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotationMarkup
IT_FREE_TEXT, IT_FREE_TEXT_CALLOUT, IT_FREE_TEXT_TYPE_WRITER, RT_GROUP, RT_REPLY, SUB_TYPE_CARET, SUB_TYPE_FREETEXT, SUB_TYPE_INK, SUB_TYPE_POLYGON, SUB_TYPE_POLYLINE, SUB_TYPE_SOUND
-
-
Constructor Summary
Constructors Constructor Description PDAnnotationLine()
Constructor.PDAnnotationLine(COSDictionary field)
Creates a Line annotation from a COSDictionary, expected to be a correct object definition.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
constructAppearances()
Create the appearance entry for this annotation.void
constructAppearances(PDDocument document)
Create the appearance entry for this annotation.PDBorderStyleDictionary
getBorderStyle()
This will retrieve the border style dictionary, specifying the width and dash pattern used in drawing the line.boolean
getCaption()
This will retrieve if the contents are shown as a caption or not.float
getCaptionHorizontalOffset()
This will retrieve the horizontal offset of the caption.java.lang.String
getCaptionPositioning()
This will retrieve the caption positioning.float
getCaptionVerticalOffset()
This will retrieve the vertical offset of the caption.java.lang.String
getEndPointEndingStyle()
This will retrieve the line ending style for the end point, possible values shown in the LE_ constants section.PDColor
getInteriorColor()
This will retrieve the interior color of the line endings defined in the LE entry.float
getLeaderLineExtensionLength()
This will retrieve the length of the leader line extensions.float
getLeaderLineLength()
This will retrieve the length of the leader line.float
getLeaderLineOffsetLength()
This will retrieve the length of the leader line offset.float[]
getLine()
This will retrieve the start and end coordinates of the line (or leader line if LL entry is set).java.lang.String
getStartPointEndingStyle()
This will retrieve the line ending style for the start point, possible values shown in the LE_ constants section.void
setBorderStyle(PDBorderStyleDictionary bs)
This will set the border style dictionary, specifying the width and dash pattern used in drawing the line.void
setCaption(boolean cap)
This will set if the contents are shown as a caption to the line.void
setCaptionHorizontalOffset(float offset)
This will set the horizontal offset of the caption.void
setCaptionPositioning(java.lang.String captionPositioning)
This will set the caption positioning.void
setCaptionVerticalOffset(float offset)
This will set the vertical offset of the caption.void
setCustomAppearanceHandler(PDAppearanceHandler appearanceHandler)
Set a custom appearance handler for generating the annotations appearance streams.void
setEndPointEndingStyle(java.lang.String style)
This will set the line ending style for the end point, see the LE_ constants for the possible values.void
setInteriorColor(PDColor ic)
This will set interior color of the line endings defined in the LE entry.void
setLeaderLineExtensionLength(float leaderLineExtensionLength)
This will set the length of the leader line extensions.void
setLeaderLineLength(float leaderLineLength)
This will set the length of the leader line.void
setLeaderLineOffsetLength(float leaderLineOffsetLength)
This will set the length of the leader line offset.void
setLine(float[] l)
This will set start and end coordinates of the line (or leader line if LL entry is set).void
setStartPointEndingStyle(java.lang.String style)
This will set the line ending style for the start point, see the LE_ constants for the possible values.-
Methods inherited from class org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotationMarkup
getBorderEffect, getCallout, getConstantOpacity, getCreationDate, getDefaultAppearance, getDefaultStyleString, getExternalData, getInkList, getInReplyTo, getIntent, getLineEndingStyle, getPath, getPopup, getQ, getRectDifference, getRectDifferences, getReplyType, getRichContents, getSubject, getTitlePopup, getVertices, setBorderEffect, setCallout, setConstantOpacity, setCreationDate, setDefaultAppearance, setDefaultStyleString, setExternalData, setInkList, setInReplyTo, setIntent, setLineEndingStyle, setPopup, setQ, setRectDifference, setRectDifferences, setRectDifferences, setReplyType, setRichContents, setSubject, setTitlePopup, setVertices
-
Methods inherited from class org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotation
createAnnotation, equals, getAnnotationFlags, getAnnotationName, getAppearance, getAppearanceState, getBorder, getColor, getColor, getContents, getCOSObject, getModifiedDate, getNormalAppearanceStream, getOptionalContent, getPage, getRectangle, getStructParent, getSubtype, hashCode, isHidden, isInvisible, isLocked, isLockedContents, isNoRotate, isNoView, isNoZoom, isPrinted, isReadOnly, isToggleNoView, setAnnotationFlags, setAnnotationName, setAppearance, setAppearanceState, setBorder, setColor, setContents, setHidden, setInvisible, setLocked, setLockedContents, setModifiedDate, setModifiedDate, setNoRotate, setNoView, setNoZoom, setOptionalContent, setPage, setPrinted, setReadOnly, setRectangle, setStructParent, setToggleNoView
-
-
-
-
Field Detail
-
customAppearanceHandler
private PDAppearanceHandler customAppearanceHandler
-
IT_LINE_ARROW
public static final java.lang.String IT_LINE_ARROW
Constant for annotation intent of Arrow.- See Also:
- Constant Field Values
-
IT_LINE_DIMENSION
public static final java.lang.String IT_LINE_DIMENSION
Constant for annotation intent of a dimension line.- See Also:
- Constant Field Values
-
LE_SQUARE
public static final java.lang.String LE_SQUARE
Constant for a square line ending.- See Also:
- Constant Field Values
-
LE_CIRCLE
public static final java.lang.String LE_CIRCLE
Constant for a circle line ending.- See Also:
- Constant Field Values
-
LE_DIAMOND
public static final java.lang.String LE_DIAMOND
Constant for a diamond line ending.- See Also:
- Constant Field Values
-
LE_OPEN_ARROW
public static final java.lang.String LE_OPEN_ARROW
Constant for a open arrow line ending.- See Also:
- Constant Field Values
-
LE_CLOSED_ARROW
public static final java.lang.String LE_CLOSED_ARROW
Constant for a closed arrow line ending.- See Also:
- Constant Field Values
-
LE_NONE
public static final java.lang.String LE_NONE
Constant for no line ending.- See Also:
- Constant Field Values
-
LE_BUTT
public static final java.lang.String LE_BUTT
Constant for a butt line ending.- See Also:
- Constant Field Values
-
LE_R_OPEN_ARROW
public static final java.lang.String LE_R_OPEN_ARROW
Constant for a reversed open arrow line ending.- See Also:
- Constant Field Values
-
LE_R_CLOSED_ARROW
public static final java.lang.String LE_R_CLOSED_ARROW
Constant for a reversed closed arrow line ending.- See Also:
- Constant Field Values
-
LE_SLASH
public static final java.lang.String LE_SLASH
Constant for a slash line ending.- See Also:
- Constant Field Values
-
SUB_TYPE
public static final java.lang.String SUB_TYPE
The type of annotation.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PDAnnotationLine
public PDAnnotationLine()
Constructor.
-
PDAnnotationLine
public PDAnnotationLine(COSDictionary field)
Creates a Line annotation from a COSDictionary, expected to be a correct object definition.- Parameters:
field
- the PDF object to represent as a field.
-
-
Method Detail
-
setLine
public void setLine(float[] l)
This will set start and end coordinates of the line (or leader line if LL entry is set).- Parameters:
l
- array of 4 floats [x1, y1, x2, y2] line start and end points in default user space.
-
getLine
public float[] getLine()
This will retrieve the start and end coordinates of the line (or leader line if LL entry is set).- Returns:
- array of floats [x1, y1, x2, y2] line start and end points in default user space.
-
setStartPointEndingStyle
public void setStartPointEndingStyle(java.lang.String style)
This will set the line ending style for the start point, see the LE_ constants for the possible values.- Overrides:
setStartPointEndingStyle
in classPDAnnotationMarkup
- Parameters:
style
- The new style.
-
getStartPointEndingStyle
public java.lang.String getStartPointEndingStyle()
This will retrieve the line ending style for the start point, possible values shown in the LE_ constants section.- Overrides:
getStartPointEndingStyle
in classPDAnnotationMarkup
- Returns:
- The ending style for the start point.
-
setEndPointEndingStyle
public void setEndPointEndingStyle(java.lang.String style)
This will set the line ending style for the end point, see the LE_ constants for the possible values.- Overrides:
setEndPointEndingStyle
in classPDAnnotationMarkup
- Parameters:
style
- The new style.
-
getEndPointEndingStyle
public java.lang.String getEndPointEndingStyle()
This will retrieve the line ending style for the end point, possible values shown in the LE_ constants section.- Overrides:
getEndPointEndingStyle
in classPDAnnotationMarkup
- Returns:
- The ending style for the end point.
-
setInteriorColor
public void setInteriorColor(PDColor ic)
This will set interior color of the line endings defined in the LE entry. color is in DeviceRGB color space.- Overrides:
setInteriorColor
in classPDAnnotationMarkup
- Parameters:
ic
- color in the DeviceRGB color space.
-
getInteriorColor
public PDColor getInteriorColor()
This will retrieve the interior color of the line endings defined in the LE entry. color is in DeviceRGB color space.- Overrides:
getInteriorColor
in classPDAnnotationMarkup
- Returns:
- object representing the color.
-
setCaption
public void setCaption(boolean cap)
This will set if the contents are shown as a caption to the line.- Parameters:
cap
- Boolean value.
-
getCaption
public boolean getCaption()
This will retrieve if the contents are shown as a caption or not.- Returns:
- boolean if the content is shown as a caption.
-
setBorderStyle
public void setBorderStyle(PDBorderStyleDictionary bs)
This will set the border style dictionary, specifying the width and dash pattern used in drawing the line.- Overrides:
setBorderStyle
in classPDAnnotationMarkup
- Parameters:
bs
- the border style dictionary to set.
-
getBorderStyle
public PDBorderStyleDictionary getBorderStyle()
This will retrieve the border style dictionary, specifying the width and dash pattern used in drawing the line.- Overrides:
getBorderStyle
in classPDAnnotationMarkup
- Returns:
- the border style dictionary.
-
getLeaderLineLength
public float getLeaderLineLength()
This will retrieve the length of the leader line.- Returns:
- the length of the leader line
-
setLeaderLineLength
public void setLeaderLineLength(float leaderLineLength)
This will set the length of the leader line.- Parameters:
leaderLineLength
- length of the leader line
-
getLeaderLineExtensionLength
public float getLeaderLineExtensionLength()
This will retrieve the length of the leader line extensions.- Returns:
- the length of the leader line extensions
-
setLeaderLineExtensionLength
public void setLeaderLineExtensionLength(float leaderLineExtensionLength)
This will set the length of the leader line extensions.- Parameters:
leaderLineExtensionLength
- length of the leader line extensions
-
getLeaderLineOffsetLength
public float getLeaderLineOffsetLength()
This will retrieve the length of the leader line offset.- Returns:
- the length of the leader line offset
-
setLeaderLineOffsetLength
public void setLeaderLineOffsetLength(float leaderLineOffsetLength)
This will set the length of the leader line offset.- Parameters:
leaderLineOffsetLength
- length of the leader line offset
-
getCaptionPositioning
public java.lang.String getCaptionPositioning()
This will retrieve the caption positioning.- Returns:
- the caption positioning
-
setCaptionPositioning
public void setCaptionPositioning(java.lang.String captionPositioning)
This will set the caption positioning. Allowed values are: "Inline" and "Top"- Parameters:
captionPositioning
- caption positioning
-
setCaptionHorizontalOffset
public void setCaptionHorizontalOffset(float offset)
This will set the horizontal offset of the caption.- Parameters:
offset
- the horizontal offset of the caption
-
getCaptionHorizontalOffset
public float getCaptionHorizontalOffset()
This will retrieve the horizontal offset of the caption.- Returns:
- the horizontal offset of the caption
-
setCaptionVerticalOffset
public void setCaptionVerticalOffset(float offset)
This will set the vertical offset of the caption.- Parameters:
offset
- vertical offset of the caption
-
getCaptionVerticalOffset
public float getCaptionVerticalOffset()
This will retrieve the vertical offset of the caption.- Returns:
- the vertical offset of the caption
-
setCustomAppearanceHandler
public void setCustomAppearanceHandler(PDAppearanceHandler appearanceHandler)
Set a custom appearance handler for generating the annotations appearance streams.- Overrides:
setCustomAppearanceHandler
in classPDAnnotationMarkup
- Parameters:
appearanceHandler
-
-
constructAppearances
public void constructAppearances()
Description copied from class:PDAnnotation
Create the appearance entry for this annotation. Not having it may prevent display in some viewers. This method is for overriding in subclasses, the default implementation does nothing.- Overrides:
constructAppearances
in classPDAnnotationMarkup
-
constructAppearances
public void constructAppearances(PDDocument document)
Description copied from class:PDAnnotation
Create the appearance entry for this annotation. Not having it may prevent display in some viewers. This method is for overriding in subclasses, the default implementation does nothing.- Overrides:
constructAppearances
in classPDAnnotationMarkup
-
-