Class Rectangle
- java.lang.Object
-
- com.gitlab.pdftk_java.com.lowagie.text.Rectangle
-
- All Implemented Interfaces:
Element
,MarkupAttributes
public class Rectangle extends java.lang.Object implements Element, MarkupAttributes
ARectangle
is the representation of a geometric figure. Rectangles support constant width borders usingsetBorderWidth(float)
andsetBorder(int)
. They also support borders that vary in width/color on each side using methods likesetBorderWidthLeft(float)
orsetBorderColorLeft(java.awt.Color)
.- See Also:
Element
,Table
,Cell
,HeaderFooter
-
-
Field Summary
Fields Modifier and Type Field Description protected java.awt.Color
background
This is the color of the background of this rectangle.protected int
border
This represents the status of the 4 sides of the rectangle.protected java.awt.Color
borderColorBottom
The color of the bottom border of this rectangle.protected java.awt.Color
borderColorLeft
The color of the left border of this rectangle.protected java.awt.Color
borderColorRight
The color of the right border of this rectangle.protected java.awt.Color
borderColorTop
The color of the top border of this rectangle.protected float
borderWidth
This is the width of the border around this rectangle.protected float
borderWidthBottom
The width of the bottom border of this rectangle.protected float
borderWidthLeft
The width of the left border of this rectangle.protected float
borderWidthRight
The width of the right border of this rectangle.protected float
borderWidthTop
The width of the top border of this rectangle.static int
BOTTOM
This represents one side of the border of theRectangle
.static int
BOX
This represents a type of border.protected java.awt.Color
color
The color of the border of this rectangle.protected float
grayFill
This is the grayscale value of the background of this rectangle.static int
LEFT
This represents one side of the border of theRectangle
.protected float
llx
the lower left x-coordinate.protected float
lly
the lower left y-coordinate.protected java.util.Properties
markupAttributes
Contains extra markupAttributesstatic int
NO_BORDER
This represents a rectangle without borders.static int
RIGHT
This represents one side of the border of theRectangle
.protected int
rotation
static int
TOP
This represents one side of the border of theRectangle
.static int
UNDEFINED
This is the value that will be used as undefined .protected float
urx
the upper right x-coordinate.protected float
ury
the upper right y-coordinate.protected boolean
useVariableBorders
Whether variable width borders are used.-
Fields inherited from interface com.gitlab.pdftk_java.com.lowagie.text.Element
ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_JUSTIFIED, ALIGN_JUSTIFIED_ALL, ALIGN_LEFT, ALIGN_MIDDLE, ALIGN_RIGHT, ALIGN_TOP, ALIGN_UNDEFINED, ANCHOR, ANNOTATION, AUTHOR, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CELL, CHAPTER, CHUNK, CREATIONDATE, CREATOR, GRAPHIC, HEADER, IMGRAW, IMGTEMPLATE, JPEG, KEYWORDS, LIST, LISTITEM, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TABLE, TITLE
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.Color
backgroundColor()
Gets the backgroundcolor.int
border()
Returns the exact type of the border.java.awt.Color
borderColor()
Gets the color of the border.float
borderWidth()
Gets the borderwidth.float
bottom()
Returns the lower left y-coordinate.float
bottom(float margin)
Returns the lower left y-coordinate, considering a given margin.void
cloneNonPositionParameters(Rectangle rect)
Copies all of the parameters from aRectangle
object except the position.void
disableBorderSide(int side)
Disables the border on the specified side.void
enableBorderSide(int side)
Enables the border on the specified side.java.awt.Color
getBorderColorBottom()
Gets the color of a border.java.awt.Color
getBorderColorLeft()
Gets the color of a border.java.awt.Color
getBorderColorRight()
Gets the color of a border.java.awt.Color
getBorderColorTop()
Gets the color of a border.float
getBorderWidthBottom()
Gets the width of a border.float
getBorderWidthLeft()
Gets the width of a border.float
getBorderWidthRight()
Gets the width of a border.float
getBorderWidthTop()
Gets the width of a border.float
getBottom()
java.util.ArrayList
getChunks()
Gets all the chunks in this element.float
getHeight()
float
getLeft()
java.lang.String
getMarkupAttribute(java.lang.String name)
Returns the value of the specified attribute.java.util.Set
getMarkupAttributeNames()
Returns aSet
ofString
attribute names for theMarkupAttributes
implementor.java.util.Properties
getMarkupAttributes()
Return aProperties
-object containing all the markupAttributes.float
getRight()
int
getRotation()
Gets the rotation of the rectanglefloat
getTop()
private float
getVariableBorderWidth(float variableWidthValue, int side)
float
getWidth()
float
grayFill()
Gets the grayscale.boolean
hasBorder(int type)
Indicates if the table has a some type of border.boolean
hasBorders()
Indicates if the table has borders.float
height()
Returns the height of the rectangle.boolean
isUseVariableBorders()
Indicates whether variable width borders are being used.float
left()
Returns the lower left x-coordinate.float
left(float margin)
Returns the lower left x-coordinate, considering a given margin.void
normalize()
Switches lowerleft with upperrightboolean
process(ElementListener listener)
Processes the element by adding it (or the different parts) to anElementListener
.Rectangle
rectangle(float top, float bottom)
Gets a Rectangle that is altered to fit on the page.float
right()
Returns the upper right x-coordinate.float
right(float margin)
Returns the upper right x-coordinate, considering a given margin.Rectangle
rotate()
Swaps the values of urx and ury and of lly and llx in order to rotate the rectangle.void
setBackgroundColor(java.awt.Color value)
Sets the backgroundcolor of the rectangle.void
setBorder(int value)
Enables/Disables the border on the specified sides.void
setBorderColor(java.awt.Color value)
Sets the color of the border.void
setBorderColorBottom(java.awt.Color value)
Sets the value of the border colorvoid
setBorderColorLeft(java.awt.Color value)
Sets the value of the border colorvoid
setBorderColorRight(java.awt.Color value)
Sets the value of the border colorvoid
setBorderColorTop(java.awt.Color value)
Sets the value of the border colorvoid
setBorderWidth(float value)
Sets the borderwidth of the table.void
setBorderWidthBottom(float borderWidthBottom)
Sets the width of a bordervoid
setBorderWidthLeft(float borderWidthLeft)
Sets the width of a bordervoid
setBorderWidthRight(float borderWidthRight)
Sets the width of a bordervoid
setBorderWidthTop(float borderWidthTop)
Sets the width of a bordervoid
setBottom(float value)
Sets the lower left y-coordinate.void
setGrayFill(float value)
Sets the grayscale of the rectangle.void
setLeft(float value)
Sets the lower left x-coordinate.void
setMarkupAttribute(java.lang.String name, java.lang.String value)
Sets the specified attribute.void
setMarkupAttributes(java.util.Properties markupAttributes)
Sets the markupAttributes.void
setRight(float value)
Sets the upper right x-coordinate.void
setTop(float value)
Sets the upper right y-coordinate.void
setUseVariableBorders(boolean useVariableBorders)
Sets a parameter indicating if the rectangle has variable bordersvoid
softCloneNonPositionParameters(Rectangle rect)
Copies all of the parameters from aRectangle
object except the position.float
top()
Returns the upper right y-coordinate.float
top(float margin)
Returns the upper right y-coordinate, considering a given margin.java.lang.String
toString()
Gets the content of the text element.int
type()
Gets the type of the text element.private void
updateBorderBasedOnWidth(float width, int side)
Updates the border flag for a side based on the specified width.float
width()
Returns the width of the rectangle.
-
-
-
Field Detail
-
UNDEFINED
public static final int UNDEFINED
This is the value that will be used as undefined .- See Also:
- Constant Field Values
-
TOP
public static final int TOP
This represents one side of the border of theRectangle
.- See Also:
- Constant Field Values
-
BOTTOM
public static final int BOTTOM
This represents one side of the border of theRectangle
.- See Also:
- Constant Field Values
-
LEFT
public static final int LEFT
This represents one side of the border of theRectangle
.- See Also:
- Constant Field Values
-
RIGHT
public static final int RIGHT
This represents one side of the border of theRectangle
.- See Also:
- Constant Field Values
-
NO_BORDER
public static final int NO_BORDER
This represents a rectangle without borders.- See Also:
- Constant Field Values
-
BOX
public static final int BOX
This represents a type of border.- See Also:
- Constant Field Values
-
llx
protected float llx
the lower left x-coordinate.
-
lly
protected float lly
the lower left y-coordinate.
-
urx
protected float urx
the upper right x-coordinate.
-
ury
protected float ury
the upper right y-coordinate.
-
border
protected int border
This represents the status of the 4 sides of the rectangle.
-
borderWidth
protected float borderWidth
This is the width of the border around this rectangle.
-
color
protected java.awt.Color color
The color of the border of this rectangle.
-
borderColorLeft
protected java.awt.Color borderColorLeft
The color of the left border of this rectangle.
-
borderColorRight
protected java.awt.Color borderColorRight
The color of the right border of this rectangle.
-
borderColorTop
protected java.awt.Color borderColorTop
The color of the top border of this rectangle.
-
borderColorBottom
protected java.awt.Color borderColorBottom
The color of the bottom border of this rectangle.
-
borderWidthLeft
protected float borderWidthLeft
The width of the left border of this rectangle.
-
borderWidthRight
protected float borderWidthRight
The width of the right border of this rectangle.
-
borderWidthTop
protected float borderWidthTop
The width of the top border of this rectangle.
-
borderWidthBottom
protected float borderWidthBottom
The width of the bottom border of this rectangle.
-
useVariableBorders
protected boolean useVariableBorders
Whether variable width borders are used.
-
background
protected java.awt.Color background
This is the color of the background of this rectangle.
-
grayFill
protected float grayFill
This is the grayscale value of the background of this rectangle.
-
rotation
protected int rotation
-
markupAttributes
protected java.util.Properties markupAttributes
Contains extra markupAttributes
-
-
Constructor Detail
-
Rectangle
public Rectangle(float llx, float lly, float urx, float ury)
Constructs aRectangle
-object.- Parameters:
llx
- lower left xlly
- lower left yurx
- upper right xury
- upper right y
-
Rectangle
public Rectangle(float urx, float ury)
Constructs aRectangle
-object starting from the origin (0, 0).- Parameters:
urx
- upper right xury
- upper right y
-
Rectangle
public Rectangle(Rectangle rect)
Constructs aRectangle
-object.- Parameters:
rect
- anotherRectangle
-
-
Method Detail
-
cloneNonPositionParameters
public void cloneNonPositionParameters(Rectangle rect)
Copies all of the parameters from aRectangle
object except the position.- Parameters:
rect
-Rectangle
to copy from
-
softCloneNonPositionParameters
public void softCloneNonPositionParameters(Rectangle rect)
Copies all of the parameters from aRectangle
object except the position.- Parameters:
rect
-Rectangle
to copy from
-
process
public boolean process(ElementListener listener)
Processes the element by adding it (or the different parts) to anElementListener
.
-
type
public int type()
Gets the type of the text element.
-
getChunks
public java.util.ArrayList getChunks()
Gets all the chunks in this element.
-
normalize
public void normalize()
Switches lowerleft with upperright
-
rectangle
public Rectangle rectangle(float top, float bottom)
Gets a Rectangle that is altered to fit on the page.- Parameters:
top
- the top positionbottom
- the bottom position- Returns:
- a
Rectangle
-
rotate
public Rectangle rotate()
Swaps the values of urx and ury and of lly and llx in order to rotate the rectangle.- Returns:
- a
Rectangle
-
setLeft
public void setLeft(float value)
Sets the lower left x-coordinate.- Parameters:
value
- the new value
-
setRight
public void setRight(float value)
Sets the upper right x-coordinate.- Parameters:
value
- the new value
-
setTop
public void setTop(float value)
Sets the upper right y-coordinate.- Parameters:
value
- the new value
-
setBottom
public void setBottom(float value)
Sets the lower left y-coordinate.- Parameters:
value
- the new value
-
setBorder
public void setBorder(int value)
Enables/Disables the border on the specified sides. The border is specified as an integer bitwise combination of the constants:LEFT, RIGHT, TOP, BOTTOM
.- Parameters:
value
- the new value- See Also:
enableBorderSide(int)
,disableBorderSide(int)
-
enableBorderSide
public void enableBorderSide(int side)
Enables the border on the specified side.- Parameters:
side
- the side to enable. One ofLEFT, RIGHT, TOP, BOTTOM
-
disableBorderSide
public void disableBorderSide(int side)
Disables the border on the specified side.- Parameters:
side
- the side to disable. One ofLEFT, RIGHT, TOP, BOTTOM
-
setBorderWidth
public void setBorderWidth(float value)
Sets the borderwidth of the table.- Parameters:
value
- the new value
-
setBorderColor
public void setBorderColor(java.awt.Color value)
Sets the color of the border.- Parameters:
value
- the new value
-
setBorderColorRight
public void setBorderColorRight(java.awt.Color value)
Sets the value of the border color- Parameters:
value
- a color value
-
setBorderColorLeft
public void setBorderColorLeft(java.awt.Color value)
Sets the value of the border color- Parameters:
value
- a color value
-
setBorderColorTop
public void setBorderColorTop(java.awt.Color value)
Sets the value of the border color- Parameters:
value
- a color value
-
setBorderColorBottom
public void setBorderColorBottom(java.awt.Color value)
Sets the value of the border color- Parameters:
value
- a color value
-
setBackgroundColor
public void setBackgroundColor(java.awt.Color value)
Sets the backgroundcolor of the rectangle.- Parameters:
value
- the new value
-
setGrayFill
public void setGrayFill(float value)
Sets the grayscale of the rectangle.- Parameters:
value
- the new value
-
left
public float left()
Returns the lower left x-coordinate.- Returns:
- the lower left x-coordinate
-
getLeft
public float getLeft()
-
right
public float right()
Returns the upper right x-coordinate.- Returns:
- the upper right x-coordinate
-
getRight
public float getRight()
-
top
public float top()
Returns the upper right y-coordinate.- Returns:
- the upper right y-coordinate
-
getTop
public float getTop()
-
bottom
public float bottom()
Returns the lower left y-coordinate.- Returns:
- the lower left y-coordinate
-
getBottom
public float getBottom()
-
left
public float left(float margin)
Returns the lower left x-coordinate, considering a given margin.- Parameters:
margin
- a margin- Returns:
- the lower left x-coordinate
-
right
public float right(float margin)
Returns the upper right x-coordinate, considering a given margin.- Parameters:
margin
- a margin- Returns:
- the upper right x-coordinate
-
top
public float top(float margin)
Returns the upper right y-coordinate, considering a given margin.- Parameters:
margin
- a margin- Returns:
- the upper right y-coordinate
-
bottom
public float bottom(float margin)
Returns the lower left y-coordinate, considering a given margin.- Parameters:
margin
- a margin- Returns:
- the lower left y-coordinate
-
width
public float width()
Returns the width of the rectangle.- Returns:
- a width
-
getWidth
public float getWidth()
-
height
public float height()
Returns the height of the rectangle.- Returns:
- a height
-
getHeight
public float getHeight()
-
hasBorders
public boolean hasBorders()
Indicates if the table has borders.- Returns:
- a boolean
-
hasBorder
public boolean hasBorder(int type)
Indicates if the table has a some type of border.- Parameters:
type
- the type of border- Returns:
- a boolean
-
border
public int border()
Returns the exact type of the border.- Returns:
- a value
-
borderWidth
public float borderWidth()
Gets the borderwidth.- Returns:
- a value
-
borderColor
public java.awt.Color borderColor()
Gets the color of the border.- Returns:
- a value
-
backgroundColor
public java.awt.Color backgroundColor()
Gets the backgroundcolor.- Returns:
- a value
-
grayFill
public float grayFill()
Gets the grayscale.- Returns:
- a value
-
getRotation
public int getRotation()
Gets the rotation of the rectangle- Returns:
- a rotation value
-
setMarkupAttribute
public void setMarkupAttribute(java.lang.String name, java.lang.String value)
Description copied from interface:MarkupAttributes
Sets the specified attribute.- Specified by:
setMarkupAttribute
in interfaceMarkupAttributes
- Parameters:
name
-String
attribute name.value
-String
attribute value.- See Also:
MarkupAttributes.setMarkupAttribute(java.lang.String, java.lang.String)
-
setMarkupAttributes
public void setMarkupAttributes(java.util.Properties markupAttributes)
Description copied from interface:MarkupAttributes
Sets the markupAttributes.- Specified by:
setMarkupAttributes
in interfaceMarkupAttributes
- Parameters:
markupAttributes
- aProperties
-object containing markupattributes- See Also:
MarkupAttributes.setMarkupAttributes(java.util.Properties)
-
getMarkupAttribute
public java.lang.String getMarkupAttribute(java.lang.String name)
Description copied from interface:MarkupAttributes
Returns the value of the specified attribute.- Specified by:
getMarkupAttribute
in interfaceMarkupAttributes
- Parameters:
name
-String
attribute name.- Returns:
String
.- See Also:
MarkupAttributes.getMarkupAttribute(java.lang.String)
-
getMarkupAttributeNames
public java.util.Set getMarkupAttributeNames()
Description copied from interface:MarkupAttributes
Returns aSet
ofString
attribute names for theMarkupAttributes
implementor.- Specified by:
getMarkupAttributeNames
in interfaceMarkupAttributes
- Returns:
Set
.- See Also:
MarkupAttributes.getMarkupAttributeNames()
-
getMarkupAttributes
public java.util.Properties getMarkupAttributes()
Description copied from interface:MarkupAttributes
Return aProperties
-object containing all the markupAttributes.- Specified by:
getMarkupAttributes
in interfaceMarkupAttributes
- Returns:
Properties
- See Also:
MarkupAttributes.getMarkupAttributes()
-
getBorderColorLeft
public java.awt.Color getBorderColorLeft()
Gets the color of a border.- Returns:
- a color value
-
getBorderColorRight
public java.awt.Color getBorderColorRight()
Gets the color of a border.- Returns:
- a color value
-
getBorderColorTop
public java.awt.Color getBorderColorTop()
Gets the color of a border.- Returns:
- a color value
-
getBorderColorBottom
public java.awt.Color getBorderColorBottom()
Gets the color of a border.- Returns:
- a color value
-
getBorderWidthLeft
public float getBorderWidthLeft()
Gets the width of a border.- Returns:
- a width
-
setBorderWidthLeft
public void setBorderWidthLeft(float borderWidthLeft)
Sets the width of a border- Parameters:
borderWidthLeft
- a width
-
getBorderWidthRight
public float getBorderWidthRight()
Gets the width of a border.- Returns:
- a width
-
setBorderWidthRight
public void setBorderWidthRight(float borderWidthRight)
Sets the width of a border- Parameters:
borderWidthRight
- a width
-
getBorderWidthTop
public float getBorderWidthTop()
Gets the width of a border.- Returns:
- a width
-
setBorderWidthTop
public void setBorderWidthTop(float borderWidthTop)
Sets the width of a border- Parameters:
borderWidthTop
- a width
-
getBorderWidthBottom
public float getBorderWidthBottom()
Gets the width of a border.- Returns:
- a width
-
setBorderWidthBottom
public void setBorderWidthBottom(float borderWidthBottom)
Sets the width of a border- Parameters:
borderWidthBottom
- a width
-
updateBorderBasedOnWidth
private void updateBorderBasedOnWidth(float width, int side)
Updates the border flag for a side based on the specified width. A width of 0 will disable the border on that side. Any other width enables it.- Parameters:
width
- width of borderside
- border side constant
-
getVariableBorderWidth
private float getVariableBorderWidth(float variableWidthValue, int side)
-
isUseVariableBorders
public boolean isUseVariableBorders()
Indicates whether variable width borders are being used. Returns true ifsetBorderWidthLeft, setBorderWidthRight, setBorderWidthTop, or setBorderWidthBottom
has been called.- Returns:
- true if variable width borders are in use
-
setUseVariableBorders
public void setUseVariableBorders(boolean useVariableBorders)
Sets a parameter indicating if the rectangle has variable borders- Parameters:
useVariableBorders
- indication if the rectangle has variable borders
-
-