Package com.lowagie.text.pdf
Class PdfLine
java.lang.Object
com.lowagie.text.pdf.PdfLine
PdfLine
defines an array with PdfChunk
-objects
that fit into 1 line.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected int
The alignment of the line.protected float
The height of the line.protected boolean
protected float
The left indentation of the line.The arraylist containing the chunks.protected Chunk
The listsymbol (if necessary).protected boolean
true
if the chunk splitting was caused by a newline.protected float
The original width.protected float
The listsymbol (if necessary).protected float
The width of the line. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) PdfChunk
Adds aPdfChunk
to thePdfLine
.private void
float
Gets the maximum size of the ascender for all the fonts used in this line.getChunk
(int idx) Gets aPdfChunk
by index.float
Gets the biggest descender for all the fonts used in this line.int
Gets the index of the lastPdfChunk
with metric attributesint
Returns the length of a line in UTF32 characters(package private) float[]
Gets the difference between the "normal" leading and the maximum size (for instance when there are images in the chunk).float
Gets the original width of the line.(package private) int
Gets the number of separators in the line.float
getWidthCorrected
(float charSpacing, float wordSpacing) Gets a width corrected with a charSpacing and wordSpacing.boolean
Checks if this line has to be justified.(package private) float
height()
Returns the height of the line.(package private) float
Returns the left indentation of the line taking the alignment of the line into account.boolean
Checks if a newline caused the line split.(package private) boolean
isRTL()
iterator()
Returns an iterator ofPdfChunk
s.float
Return the indentation needed to show the listsymbol.Returns the listsymbol of this line.(package private) int
Returns the number of space-characters in this line.void
Resets the alignment of this line.(package private) void
setExtraIndent
(float extra) Adds extra indentation to the left (for Paragraph.setFirstLineIndent).void
setListItem
(ListItem listItem) Sets the listsymbol of this line.int
size()
Returns the number of chunks in the line.toString()
Get the string representation of what is in this line.(package private) float
Returns the width that is left, after a maximum of characters is added to the line.
-
Field Details
-
line
The arraylist containing the chunks. -
left
protected float leftThe left indentation of the line. -
width
protected float widthThe width of the line. -
alignment
protected int alignmentThe alignment of the line. -
height
protected float heightThe height of the line. -
listSymbol
The listsymbol (if necessary). -
symbolIndent
protected float symbolIndentThe listsymbol (if necessary). -
newlineSplit
protected boolean newlineSplittrue
if the chunk splitting was caused by a newline. -
originalWidth
protected float originalWidthThe original width. -
isRTL
protected boolean isRTL
-
-
Constructor Details
-
PdfLine
PdfLine(float left, float right, int alignment, float height) Constructs a newPdfLine
-object.- Parameters:
left
- the limit of the line at the leftright
- the limit of the line at the rightalignment
- the alignment of the lineheight
- the height of the line
-
PdfLine
PdfLine(float left, float originalWidth, float remainingWidth, int alignment, boolean newlineSplit, ArrayList<PdfChunk> line, boolean isRTL) Creates a PdfLine object.- Parameters:
left
- the left offsetoriginalWidth
- the original width of the lineremainingWidth
- bigger than 0 if the line isn't completely filledalignment
- the alignment of the linenewlineSplit
- was the line splitted (or does the paragraph end with this line)line
- an array of PdfChunk objectsisRTL
- do you have to read the line from Right to Left?
-
-
Method Details
-
add
Adds aPdfChunk
to thePdfLine
.- Parameters:
chunk
- thePdfChunk
to add- Returns:
null
if the chunk could be added completely; if not aPdfChunk
containing the part of the chunk that could not be added is returned
-
addToLine
-
size
public int size()Returns the number of chunks in the line.- Returns:
- a value
-
iterator
Returns an iterator ofPdfChunk
s.- Returns:
- an
Iterator
-
height
float height()Returns the height of the line.- Returns:
- a value
-
indentLeft
float indentLeft()Returns the left indentation of the line taking the alignment of the line into account.- Returns:
- a value
-
hasToBeJustified
public boolean hasToBeJustified()Checks if this line has to be justified.- Returns:
true
if the alignment equals ALIGN_JUSTIFIED and there is some width left.
-
resetAlignment
public void resetAlignment()Resets the alignment of this line.The alignment of the last line of for instance a
Paragraph
that has to be justified, has to be reset to ALIGN_LEFT. -
setExtraIndent
void setExtraIndent(float extra) Adds extra indentation to the left (for Paragraph.setFirstLineIndent). -
widthLeft
float widthLeft()Returns the width that is left, after a maximum of characters is added to the line.- Returns:
- a value
-
numberOfSpaces
int numberOfSpaces()Returns the number of space-characters in this line.- Returns:
- a value
-
setListItem
Sets the listsymbol of this line.This is only necessary for the first line of a
ListItem
.- Parameters:
listItem
- the list symbol
-
listSymbol
Returns the listsymbol of this line.- Returns:
- a
PdfChunk
if the line has a listsymbol;null
otherwise
-
listIndent
public float listIndent()Return the indentation needed to show the listsymbol.- Returns:
- a value
-
toString
Get the string representation of what is in this line. -
GetLineLengthUtf32
public int GetLineLengthUtf32()Returns the length of a line in UTF32 characters- Returns:
- the length in UTF32 characters
- Since:
- 2.1.2
-
isNewlineSplit
public boolean isNewlineSplit()Checks if a newline caused the line split.- Returns:
true
if a newline caused the line split
-
getLastStrokeChunk
public int getLastStrokeChunk()Gets the index of the lastPdfChunk
with metric attributes- Returns:
- the last
PdfChunk
with metric attributes
-
getChunk
Gets aPdfChunk
by index.- Parameters:
idx
- the index- Returns:
- the
PdfChunk
or null if beyond the array
-
getOriginalWidth
public float getOriginalWidth()Gets the original width of the line.- Returns:
- the original width of the line
-
getMaxSize
float[] getMaxSize()Gets the difference between the "normal" leading and the maximum size (for instance when there are images in the chunk).- Returns:
- an extra leading for images
- Since:
- 2.1.5
-
isRTL
boolean isRTL() -
getSeparatorCount
int getSeparatorCount()Gets the number of separators in the line.- Returns:
- the number of separators in the line
- Since:
- 2.1.2
-
getWidthCorrected
public float getWidthCorrected(float charSpacing, float wordSpacing) Gets a width corrected with a charSpacing and wordSpacing.- Parameters:
charSpacing
- the spacing between characterswordSpacing
- the spacing between words- Returns:
- a corrected width
-
getAscender
public float getAscender()Gets the maximum size of the ascender for all the fonts used in this line.- Returns:
- maximum size of all the ascenders used in this line
-
getDescender
public float getDescender()Gets the biggest descender for all the fonts used in this line. Note that this is a negative number.- Returns:
- maximum size of all the ascenders used in this line
-