Class Chunk
- java.lang.Object
-
- com.gitlab.pdftk_java.com.lowagie.text.Chunk
-
- All Implemented Interfaces:
Element
,MarkupAttributes
public class Chunk extends java.lang.Object implements Element, MarkupAttributes
This is the smallest significant part of text that can be added to a document.Most elements can be divided in one or more
Chunk
s. A chunk is aString
with a certainFont
. all other layoutparameters should be defined in the object to which this chunk of text is added.Example:
Chunk chunk = new Chunk("Hello world", FontFactory.getFont(FontFactory.COURIER, 20, Font.ITALIC, new Color(255, 0, 0))); document.add(chunk);
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
ACTION
Key for Action.protected java.util.HashMap
attributes
Contains some of the attributes for this Chunk.static java.lang.String
BACKGROUND
Key for background.static java.lang.String
COLOR
Key for color.protected java.lang.StringBuffer
content
This is the content of this chunk of text.static java.lang.String
ENCODING
Key for encoding.protected Font
font
This is theFont
of this chunk of text.static java.lang.String
GENERICTAG
Key for generic tag.static java.lang.String
HSCALE
Key for text horizontal scaling.static java.lang.String
HYPHENATION
Key for hyphenation.static java.lang.String
IMAGE
Key for image.static java.lang.String
LOCALDESTINATION
Key for local destination.static java.lang.String
LOCALGOTO
Key for local goto.protected java.util.Properties
markupAttributes
Contains extra markupAttributesstatic Chunk
NEWLINE
This is a Chunk containing a newline.static java.lang.String
NEWPAGE
Key for newpage.static Chunk
NEXTPAGE
This is a Chunk containing a newpage.static java.lang.String
OBJECT_REPLACEMENT_CHARACTER
The character stand in for an image.static java.lang.String
PDFANNOTATION
Key for annotation.static java.lang.String
REMOTEGOTO
Key for remote goto.static java.lang.String
SKEW
Key for text skewing.static java.lang.String
SPLITCHARACTER
Key for split character.static java.lang.String
SUBSUPSCRIPT
Key for sub/superscript.static java.lang.String
TEXTRENDERMODE
Key for text rendering mode.static java.lang.String
UNDERLINE
Key for underline.-
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
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
Chunk()
Empty constructor.Chunk(char c)
Constructs a chunk of text with a char, without specifying aFont
.Chunk(char c, Font font)
Constructs a chunk of text with a char and a certainFont
.Chunk(java.lang.String content)
Constructs a chunk of text with a certain content, without specifying aFont
.Chunk(java.lang.String content, Font font)
Constructs a chunk of text with a certain content and a certainFont
.Chunk(java.util.Properties attributes)
Returns aChunk
that has been constructed taking in account the value of some attributes .
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.lang.Object[][]
addToArray(java.lang.Object[][] original, java.lang.Object[] item)
Utility method to extend an array.java.lang.StringBuffer
append(java.lang.String string)
appends some text to thisChunk
.java.lang.String
content()
Returns the content of thisChunk
.Font
font()
Gets the font of thisChunk
.java.util.HashMap
getAttributes()
Gets the attributes for thisChunk
.java.util.ArrayList
getChunks()
Gets all the chunks in this element.Font
getFont()
float
getHorizontalScaling()
Gets the horizontal scaling.static java.util.Set
getKeySet(java.util.Hashtable table)
Gets the keys of a Hashtablejava.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
getTextRise()
Gets the text displacement relatiev to the baseline.float
getWidthPoint()
Gets the width of the Chunk in points.boolean
hasAttributes()
Checks the attributes of thisChunk
.boolean
isEmpty()
Checks is thisChunk
is empty.static boolean
isTag(java.lang.String tag)
Checks if a given tag corresponds with this object.boolean
process(ElementListener listener)
Processes the element by adding it (or the different parts) to anElementListener
.Chunk
setAction(PdfAction action)
Sets an action for thisChunk
.Chunk
setAnchor(java.lang.String url)
Sets an anchor for thisChunk
.Chunk
setAnchor(java.net.URL url)
Sets an anchor for thisChunk
.Chunk
setAnnotation(PdfAnnotation annotation)
Sets a generic annotation to thisChunk
.private Chunk
setAttribute(java.lang.String name, java.lang.Object obj)
Sets an arbitrary attribute.Chunk
setBackground(java.awt.Color color)
Sets the color of the backgroundChunk
.Chunk
setBackground(java.awt.Color color, float extraLeft, float extraBottom, float extraRight, float extraTop)
Sets the color and the size of the backgroundChunk
.void
setFont(Font font)
Sets the font of thisChunk
.Chunk
setGenericTag(java.lang.String text)
Sets the generic tagChunk
.Chunk
setHorizontalScaling(float scale)
Sets the text horizontal scaling.Chunk
setHyphenation(HyphenationEvent hyphenation)
sets the hyphenation engine to thisChunk
.Chunk
setLocalDestination(java.lang.String name)
Sets a local destination for thisChunk
.Chunk
setLocalGoto(java.lang.String name)
Sets a local goto for thisChunk
.void
setMarkupAttribute(java.lang.String name, java.lang.String value)
Sets the specified attribute.void
setMarkupAttributes(java.util.Properties markupAttributes)
Sets the markupAttributes.Chunk
setNewPage()
Sets a new page tag..Chunk
setRemoteGoto(java.lang.String filename, int page)
Sets a goto for a remote destination for thisChunk
.Chunk
setRemoteGoto(java.lang.String filename, java.lang.String name)
Sets a goto for a remote destination for thisChunk
.Chunk
setSkew(float alpha, float beta)
Skews the text to simulate italic and other effects.Chunk
setSplitCharacter(SplitCharacter splitCharacter)
Sets the split characters.Chunk
setTextRenderMode(int mode, float strokeWidth, java.awt.Color strokeColor)
Sets the text rendering mode.Chunk
setTextRise(float rise)
Sets the text displacement relative to the baseline.Chunk
setUnderline(float thickness, float yPosition)
Sets an horizontal line that can be an underline or a strikethrough.Chunk
setUnderline(java.awt.Color color, float thickness, float thicknessMul, float yPosition, float yPositionMul, int cap)
Sets an horizontal line that can be an underline or a strikethrough.java.lang.String
toString()
Returns the content of thisChunk
.int
type()
Gets the type of the text element.
-
-
-
Field Detail
-
OBJECT_REPLACEMENT_CHARACTER
public static final java.lang.String OBJECT_REPLACEMENT_CHARACTER
The character stand in for an image.- See Also:
- Constant Field Values
-
NEWLINE
public static final Chunk NEWLINE
This is a Chunk containing a newline.
-
NEXTPAGE
public static final Chunk NEXTPAGE
This is a Chunk containing a newpage.
-
SUBSUPSCRIPT
public static final java.lang.String SUBSUPSCRIPT
Key for sub/superscript.- See Also:
- Constant Field Values
-
UNDERLINE
public static final java.lang.String UNDERLINE
Key for underline.- See Also:
- Constant Field Values
-
COLOR
public static final java.lang.String COLOR
Key for color.- See Also:
- Constant Field Values
-
ENCODING
public static final java.lang.String ENCODING
Key for encoding.- See Also:
- Constant Field Values
-
REMOTEGOTO
public static final java.lang.String REMOTEGOTO
Key for remote goto.- See Also:
- Constant Field Values
-
LOCALGOTO
public static final java.lang.String LOCALGOTO
Key for local goto.- See Also:
- Constant Field Values
-
LOCALDESTINATION
public static final java.lang.String LOCALDESTINATION
Key for local destination.- See Also:
- Constant Field Values
-
IMAGE
public static final java.lang.String IMAGE
Key for image.- See Also:
- Constant Field Values
-
GENERICTAG
public static final java.lang.String GENERICTAG
Key for generic tag.- See Also:
- Constant Field Values
-
NEWPAGE
public static final java.lang.String NEWPAGE
Key for newpage.- See Also:
- Constant Field Values
-
SPLITCHARACTER
public static final java.lang.String SPLITCHARACTER
Key for split character.- See Also:
- Constant Field Values
-
ACTION
public static final java.lang.String ACTION
Key for Action.- See Also:
- Constant Field Values
-
BACKGROUND
public static final java.lang.String BACKGROUND
Key for background.- See Also:
- Constant Field Values
-
PDFANNOTATION
public static final java.lang.String PDFANNOTATION
Key for annotation.- See Also:
- Constant Field Values
-
HYPHENATION
public static final java.lang.String HYPHENATION
Key for hyphenation.- See Also:
- Constant Field Values
-
TEXTRENDERMODE
public static final java.lang.String TEXTRENDERMODE
Key for text rendering mode.- See Also:
- Constant Field Values
-
SKEW
public static final java.lang.String SKEW
Key for text skewing.- See Also:
- Constant Field Values
-
HSCALE
public static final java.lang.String HSCALE
Key for text horizontal scaling.- See Also:
- Constant Field Values
-
content
protected java.lang.StringBuffer content
This is the content of this chunk of text.
-
font
protected Font font
This is theFont
of this chunk of text.
-
attributes
protected java.util.HashMap attributes
Contains some of the attributes for this Chunk.
-
markupAttributes
protected java.util.Properties markupAttributes
Contains extra markupAttributes
-
-
Constructor Detail
-
Chunk
protected Chunk()
Empty constructor.
-
Chunk
public Chunk(java.lang.String content, Font font)
Constructs a chunk of text with a certain content and a certainFont
.- Parameters:
content
- the contentfont
- the font
-
Chunk
public Chunk(java.lang.String content)
Constructs a chunk of text with a certain content, without specifying aFont
.- Parameters:
content
- the content
-
Chunk
public Chunk(char c, Font font)
Constructs a chunk of text with a char and a certainFont
.- Parameters:
c
- the contentfont
- the font
-
Chunk
public Chunk(char c)
Constructs a chunk of text with a char, without specifying aFont
.- Parameters:
c
- the content
-
Chunk
public Chunk(java.util.Properties attributes)
Returns aChunk
that has been constructed taking in account the value of some attributes .- Parameters:
attributes
- Some attributes
-
-
Method Detail
-
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.
-
append
public java.lang.StringBuffer append(java.lang.String string)
appends some text to thisChunk
.- Parameters:
string
-String
- Returns:
- a
StringBuffer
-
font
public Font font()
Gets the font of thisChunk
.- Returns:
- a
Font
-
getFont
public Font getFont()
-
setFont
public void setFont(Font font)
Sets the font of thisChunk
.- Parameters:
font
- aFont
-
content
public java.lang.String content()
Returns the content of thisChunk
.- Returns:
- a
String
-
toString
public java.lang.String toString()
Returns the content of thisChunk
.
-
isEmpty
public boolean isEmpty()
Checks is thisChunk
is empty.- Returns:
false
if the Chunk contains other characters than space.
-
getWidthPoint
public float getWidthPoint()
Gets the width of the Chunk in points.- Returns:
- a width in points
-
setTextRise
public Chunk setTextRise(float rise)
Sets the text displacement relative to the baseline. Positive values rise the text, negative values lower the text.It can be used to implement sub/superscript.
- Parameters:
rise
- the displacement in points- Returns:
- this
Chunk
-
getTextRise
public float getTextRise()
Gets the text displacement relatiev to the baseline.- Returns:
- a displacement in points
-
setTextRenderMode
public Chunk setTextRenderMode(int mode, float strokeWidth, java.awt.Color strokeColor)
Sets the text rendering mode. It can outline text, simulate bold and make text invisible.- Parameters:
mode
- the text rendering mode. It can bePdfContentByte.TEXT_RENDER_MODE_FILL
,PdfContentByte.TEXT_RENDER_MODE_STROKE
,PdfContentByte.TEXT_RENDER_MODE_FILL_STROKE
andPdfContentByte.TEXT_RENDER_MODE_INVISIBLE
.strokeWidth
- the stroke line width for the modesPdfContentByte.TEXT_RENDER_MODE_STROKE
andPdfContentByte.TEXT_RENDER_MODE_FILL_STROKE
.strokeColor
- the stroke color ornull
to follow the text color- Returns:
- this
Chunk
-
setSkew
public Chunk setSkew(float alpha, float beta)
Skews the text to simulate italic and other effects. Tryalpha=0
andbeta=12
.- Parameters:
alpha
- the first angle in degreesbeta
- the second angle in degrees- Returns:
- this
Chunk
-
setHorizontalScaling
public Chunk setHorizontalScaling(float scale)
Sets the text horizontal scaling. A value of 1 is normal and a value of 0.5f shrinks the text to half it's width.- Parameters:
scale
- the horizontal scaling factor- Returns:
- this
Chunk
-
getHorizontalScaling
public float getHorizontalScaling()
Gets the horizontal scaling.- Returns:
- a percentage in float
-
setAction
public Chunk setAction(PdfAction action)
Sets an action for thisChunk
.- Parameters:
action
- the action- Returns:
- this
Chunk
-
setAnchor
public Chunk setAnchor(java.net.URL url)
Sets an anchor for thisChunk
.- Parameters:
url
- theURL
to link to- Returns:
- this
Chunk
-
setAnchor
public Chunk setAnchor(java.lang.String url)
Sets an anchor for thisChunk
.- Parameters:
url
- the url to link to- Returns:
- this
Chunk
-
setLocalGoto
public Chunk setLocalGoto(java.lang.String name)
Sets a local goto for thisChunk
.There must be a local destination matching the name.
- Parameters:
name
- the name of the destination to go to- Returns:
- this
Chunk
-
setBackground
public Chunk setBackground(java.awt.Color color)
Sets the color of the backgroundChunk
.- Parameters:
color
- the color of the background- Returns:
- this
Chunk
-
setBackground
public Chunk setBackground(java.awt.Color color, float extraLeft, float extraBottom, float extraRight, float extraTop)
Sets the color and the size of the backgroundChunk
.- Parameters:
color
- the color of the backgroundextraLeft
- increase the size of the rectangle in the leftextraBottom
- increase the size of the rectangle in the bottomextraRight
- increase the size of the rectangle in the rightextraTop
- increase the size of the rectangle in the top- Returns:
- this
Chunk
-
setUnderline
public Chunk setUnderline(float thickness, float yPosition)
Sets an horizontal line that can be an underline or a strikethrough. Actually, the line can be anywhere vertically and has always theChunk
width. Multiple call to this method will produce multiple lines.- Parameters:
thickness
- the absolute thickness of the lineyPosition
- the absolute y position relative to the baseline- Returns:
- this
Chunk
-
setUnderline
public Chunk setUnderline(java.awt.Color color, float thickness, float thicknessMul, float yPosition, float yPositionMul, int cap)
Sets an horizontal line that can be an underline or a strikethrough. Actually, the line can be anywhere vertically and has always theChunk
width. Multiple call to this method will produce multiple lines.- Parameters:
color
- the color of the line ornull
to follow the text colorthickness
- the absolute thickness of the linethicknessMul
- the thickness multiplication factor with the font sizeyPosition
- the absolute y position relative to the baselineyPositionMul
- the position multiplication factor with the font sizecap
- the end line cap. Allowed values are PdfContentByte.LINE_CAP_BUTT, PdfContentByte.LINE_CAP_ROUND and PdfContentByte.LINE_CAP_PROJECTING_SQUARE- Returns:
- this
Chunk
-
addToArray
public static java.lang.Object[][] addToArray(java.lang.Object[][] original, java.lang.Object[] item)
Utility method to extend an array.- Parameters:
original
- the original array ornull
item
- the item to be added to the array- Returns:
- a new array with the item appended
-
setAnnotation
public Chunk setAnnotation(PdfAnnotation annotation)
Sets a generic annotation to thisChunk
.- Parameters:
annotation
- the annotation- Returns:
- this
Chunk
-
setHyphenation
public Chunk setHyphenation(HyphenationEvent hyphenation)
sets the hyphenation engine to thisChunk
.- Parameters:
hyphenation
- the hyphenation engine- Returns:
- this
Chunk
-
setRemoteGoto
public Chunk setRemoteGoto(java.lang.String filename, java.lang.String name)
Sets a goto for a remote destination for thisChunk
.- Parameters:
filename
- the file name of the destination documentname
- the name of the destination to go to- Returns:
- this
Chunk
-
setRemoteGoto
public Chunk setRemoteGoto(java.lang.String filename, int page)
Sets a goto for a remote destination for thisChunk
.- Parameters:
filename
- the file name of the destination documentpage
- the page of the destination to go to. First page is 1- Returns:
- this
Chunk
-
setLocalDestination
public Chunk setLocalDestination(java.lang.String name)
Sets a local destination for thisChunk
.- Parameters:
name
- the name for this destination- Returns:
- this
Chunk
-
setGenericTag
public Chunk setGenericTag(java.lang.String text)
Sets the generic tagChunk
.The text for this tag can be retrieved with
PdfPageEvent
.- Parameters:
text
- the text for the tag- Returns:
- this
Chunk
-
setSplitCharacter
public Chunk setSplitCharacter(SplitCharacter splitCharacter)
Sets the split characters.- Parameters:
splitCharacter
- theSplitCharacter
interface- Returns:
- this
Chunk
-
setNewPage
public Chunk setNewPage()
Sets a new page tag..- Returns:
- this
Chunk
-
setAttribute
private Chunk setAttribute(java.lang.String name, java.lang.Object obj)
Sets an arbitrary attribute.- Parameters:
name
- the key for the attributeobj
- the value of the attribute- Returns:
- this
Chunk
-
getAttributes
public java.util.HashMap getAttributes()
Gets the attributes for thisChunk
.It may be null.
- Returns:
- the attributes for this
Chunk
-
hasAttributes
public boolean hasAttributes()
Checks the attributes of thisChunk
.- Returns:
- false if there aren't any.
-
isTag
public static boolean isTag(java.lang.String tag)
Checks if a given tag corresponds with this object.- Parameters:
tag
- the given tag- Returns:
- true if the tag corresponds
-
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()
-
getKeySet
public static java.util.Set getKeySet(java.util.Hashtable table)
Gets the keys of a Hashtable- Parameters:
table
- a Hashtable- Returns:
- the keyset of a Hashtable (or an empty set if table is null)
-
-