Package com.itextpdf.text
Class Phrase
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<E>
-
- java.util.ArrayList<Element>
-
- com.itextpdf.text.Phrase
-
- All Implemented Interfaces:
Element,TextElementArray,java.io.Serializable,java.lang.Cloneable,java.lang.Iterable<Element>,java.util.Collection<Element>,java.util.List<Element>,java.util.RandomAccess
- Direct Known Subclasses:
Anchor,NoNewLineParagraph,Paragraph
public class Phrase extends java.util.ArrayList<Element> implements TextElementArray
APhraseis a series ofChunks.A
Phrasehas a mainFont, but some chunks within the phrase can have aFontthat differs from the mainFont. All theChunks in aPhrasehave the sameleading.Example:
// When no parameters are passed, the default leading = 16 Phrase phrase0 = new Phrase(); Phrase phrase1 = new Phrase("this is a phrase"); // In this example the leading is passed as a parameter Phrase phrase2 = new Phrase(16, "this is a phrase with leading 16"); // When a Font is passed (explicitly or embedded in a chunk), the default leading = 1.5 * size of the font Phrase phrase3 = new Phrase("this is a phrase with a red, normal font Courier, size 12", FontFactory.getFont(FontFactory.COURIER, 12, Font.NORMAL, new Color(255, 0, 0))); Phrase phrase4 = new Phrase(new Chunk("this is a phrase")); Phrase phrase5 = new Phrase(18, new Chunk("this is a phrase", FontFactory.getFont(FontFactory.HELVETICA, 16, Font.BOLD, new Color(255, 0, 0)));- See Also:
Element,Chunk,Paragraph,Anchor, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected FontfontThis is the font of this phrase.protected HyphenationEventhyphenationNull, unless the Phrase has to be hyphenated.protected floatleadingThis is the leading of this phrase.protected floatmultipliedLeadingThe text leading that is multiplied by the biggest font size in the line.private static longserialVersionUIDprotected TabSettingstabSettingsPredefined tab position and properties(alignment, leader and etc.);-
Fields inherited from interface com.itextpdf.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, BODY, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CHAPTER, CHUNK, CREATIONDATE, CREATOR, DIV, HEADER, IMGRAW, IMGTEMPLATE, JBIG2, JPEG, JPEG2000, KEYWORDS, LANGUAGE, LIST, LISTITEM, MARKED, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, SECTION, SUBJECT, TITLE, WRITABLE_DIRECT, YMARK
-
-
Constructor Summary
Constructors Modifier Constructor Description Phrase()Constructs aPhrasewithout specifying a leading.privatePhrase(boolean dummy)Constructs a Phrase that can be used in the static getInstance() method.Phrase(float leading)Constructs aPhrasewith a certain leading.Phrase(float leading, Chunk chunk)Constructs aPhrasewith a certainChunkand a certain leading.Phrase(float leading, java.lang.String string)Constructs aPhrasewith a certain leading and a certainString.Phrase(float leading, java.lang.String string, Font font)Constructs aPhrasewith a certain leading, a certainStringand a certainFont.Phrase(Chunk chunk)Constructs aPhrasewith a certainChunk.Phrase(Phrase phrase)Copy constructor forPhrase.Phrase(java.lang.String string)Constructs aPhrasewith a certainString.Phrase(java.lang.String string, Font font)Constructs aPhrasewith a certainStringand a certainFont.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(int index, Element element)Adds aChunk, anAnchoror anotherPhraseto thisPhrase.booleanadd(Element element)Adds aChunk,Anchoror anotherPhraseto thisPhrase.booleanadd(java.lang.String s)Adds aStringto thisPhrase.booleanaddAll(java.util.Collection<? extends Element> collection)Adds a collection ofChunks to thisPhrase.protected booleanaddChunk(Chunk chunk)Adds a Chunk.protected voidaddSpecial(Element object)Adds anElementto theParagraph.java.util.List<Chunk>getChunks()Gets all the chunks in this element.java.lang.StringgetContent()Returns the content as a String object.FontgetFont()Gets the font of the firstChunkthat appears in thisPhrase.HyphenationEventgetHyphenation()Getter for the hyphenation settings.static PhrasegetInstance(int leading, java.lang.String string)Gets a special kind of Phrase that changes some characters into corresponding symbols.static PhrasegetInstance(int leading, java.lang.String string, Font font)Gets a special kind of Phrase that changes some characters into corresponding symbols.static PhrasegetInstance(java.lang.String string)Gets a special kind of Phrase that changes some characters into corresponding symbols.floatgetLeading()Gets the leading of this phrase.floatgetMultipliedLeading()Gets the variable leadingTabSettingsgetTabSettings()Getter for the tab stops settings.floatgetTotalLeading()Gets the total leading.booleanhasLeading()Checks you if the leading of this phrase is defined.booleanisContent()Checks if this element is a content object.booleanisEmpty()Checks is thisPhrasecontains no or 1 emptyChunk.booleanisNestable()Checks if this element is nestable.booleanprocess(ElementListener listener)Processes the element by adding it (or the different parts) to anElementListener.voidsetFont(Font font)Sets the main font of this phrase.voidsetHyphenation(HyphenationEvent hyphenation)Setter for the hyphenation.voidsetLeading(float fixedLeading)voidsetLeading(float fixedLeading, float multipliedLeading)Sets the leading fixed and variable.voidsetMultipliedLeading(float multipliedLeading)Sets the variable leading.voidsetTabSettings(TabSettings tabSettings)Setter for the tab stops.booleantrim()inttype()Gets the type of the text element.-
Methods inherited from class java.util.ArrayList
addAll, clear, clone, contains, ensureCapacity, equals, forEach, get, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeIf, removeRange, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray, trimToSize
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
leading
protected float leading
This is the leading of this phrase.
-
multipliedLeading
protected float multipliedLeading
The text leading that is multiplied by the biggest font size in the line.
-
font
protected Font font
This is the font of this phrase.
-
hyphenation
protected HyphenationEvent hyphenation
Null, unless the Phrase has to be hyphenated.- Since:
- 2.1.2
-
tabSettings
protected TabSettings tabSettings
Predefined tab position and properties(alignment, leader and etc.);- Since:
- 5.4.1
-
-
Constructor Detail
-
Phrase
public Phrase()
Constructs aPhrasewithout specifying a leading.
-
Phrase
public Phrase(Phrase phrase)
Copy constructor forPhrase.- Parameters:
phrase- the Phrase to copy
-
Phrase
public Phrase(float leading)
Constructs aPhrasewith a certain leading.- Parameters:
leading- the leading
-
Phrase
public Phrase(Chunk chunk)
Constructs aPhrasewith a certainChunk.- Parameters:
chunk- aChunk
-
Phrase
public Phrase(float leading, Chunk chunk)Constructs aPhrasewith a certainChunkand a certain leading.- Parameters:
leading- the leadingchunk- aChunk
-
Phrase
public Phrase(java.lang.String string)
Constructs aPhrasewith a certainString.- Parameters:
string- aString
-
Phrase
public Phrase(java.lang.String string, Font font)Constructs aPhrasewith a certainStringand a certainFont.- Parameters:
string- aStringfont- aFont
-
Phrase
public Phrase(float leading, java.lang.String string)Constructs aPhrasewith a certain leading and a certainString.- Parameters:
leading- the leadingstring- aString
-
Phrase
public Phrase(float leading, java.lang.String string, Font font)Constructs aPhrasewith a certain leading, a certainStringand a certainFont.- Parameters:
leading- the leadingstring- aStringfont- aFont
-
Phrase
private Phrase(boolean dummy)
Constructs a Phrase that can be used in the static getInstance() method.- Parameters:
dummy- a dummy parameter
-
-
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.List<Chunk> getChunks()
Gets all the chunks in this element.
-
isContent
public boolean isContent()
Description copied from interface:ElementChecks if this element is a content object. If not, it's a metadata object.- Specified by:
isContentin interfaceElement- Returns:
- true if this is a 'content' element; false if this is a 'metadata' element
- Since:
- iText 2.0.8
- See Also:
Element.isContent()
-
isNestable
public boolean isNestable()
Description copied from interface:ElementChecks if this element is nestable.- Specified by:
isNestablein interfaceElement- Returns:
- true if this element can be nested inside other elements.
- Since:
- iText 2.0.8
- See Also:
Element.isNestable()
-
add
public void add(int index, Element element)Adds aChunk, anAnchoror anotherPhraseto thisPhrase.- Specified by:
addin interfacejava.util.List<Element>- Overrides:
addin classjava.util.ArrayList<Element>- Parameters:
index- index at which the specified element is to be insertedelement- an object of typeChunk,AnchororPhrase- Throws:
java.lang.ClassCastException- when you try to add something that isn't aChunk,AnchororPhrase- Since:
- 5.0.1 (signature changed to use Element)
-
add
public boolean add(java.lang.String s)
Adds aStringto thisPhrase.- Parameters:
s- a string- Returns:
- a boolean
- Since:
- 5.0.1
-
add
public boolean add(Element element)
Adds aChunk,Anchoror anotherPhraseto thisPhrase.- Specified by:
addin interfacejava.util.Collection<Element>- Specified by:
addin interfacejava.util.List<Element>- Specified by:
addin interfaceTextElementArray- Overrides:
addin classjava.util.ArrayList<Element>- Parameters:
element- an object of typeChunk,AnchororPhrase- Returns:
- a boolean
- Throws:
java.lang.ClassCastException- when you try to add something that isn't aChunk,AnchororPhrase- Since:
- 5.0.1 (signature changed to use Element)
-
addAll
public boolean addAll(java.util.Collection<? extends Element> collection)
Adds a collection ofChunks to thisPhrase.- Specified by:
addAllin interfacejava.util.Collection<Element>- Specified by:
addAllin interfacejava.util.List<Element>- Overrides:
addAllin classjava.util.ArrayList<Element>- Parameters:
collection- a collection ofChunks,Anchors andPhrases.- Returns:
trueif the action succeeded,falseif not.- Throws:
java.lang.ClassCastException- when you try to add something that isn't aChunk,AnchororPhrase
-
addChunk
protected boolean addChunk(Chunk chunk)
Adds a Chunk.This method is a hack to solve a problem I had with phrases that were split between chunks in the wrong place.
- Parameters:
chunk- a Chunk to add to the Phrase- Returns:
- true if adding the Chunk succeeded
-
addSpecial
protected void addSpecial(Element object)
Adds anElementto theParagraph.- Parameters:
object- the object to add.
-
setLeading
public void setLeading(float fixedLeading, float multipliedLeading)Sets the leading fixed and variable. The resultant leading will be- If Phrase is added to the ColumnText: fixedLeading+multipliedLeading*maxFontSize, where maxFontSize is the size of the biggest font in the line;
- If Phrase is added to the PdfDocument: fixedLeading+multipliedLeading*phraseFontSize, where phraseFontSize is the size of the font applied to the current phrase.
- Parameters:
fixedLeading- the fixed leadingmultipliedLeading- the variable leading
-
setLeading
public void setLeading(float fixedLeading)
- See Also:
setLeading(float)
-
setMultipliedLeading
public void setMultipliedLeading(float multipliedLeading)
Sets the variable leading. The resultant leading will be- If Phrase is added to the ColumnText: fixedLeading+multipliedLeading*maxFontSize, where maxFontSize is the size of the biggest font in the line;
- If Phrase is added to the PdfDocument: fixedLeading+multipliedLeading*phraseFontSize, where phraseFontSize is the size of the font applied to the current phrase.
- Parameters:
multipliedLeading- the variable leading
-
setFont
public void setFont(Font font)
Sets the main font of this phrase.- Parameters:
font- the new font
-
getLeading
public float getLeading()
Gets the leading of this phrase.- Returns:
- the linespacing
-
getMultipliedLeading
public float getMultipliedLeading()
Gets the variable leading- Returns:
- the leading
-
getTotalLeading
public float getTotalLeading()
Gets the total leading. This method is based on the assumption that the font of the Paragraph is the font of all the elements that make part of the paragraph. This isn't necessarily true.- Returns:
- the total leading (fixed and multiplied)
-
hasLeading
public boolean hasLeading()
Checks you if the leading of this phrase is defined.- Returns:
- true if the leading is defined
-
getFont
public Font getFont()
Gets the font of the firstChunkthat appears in thisPhrase.- Returns:
- a
Font
-
getContent
public java.lang.String getContent()
Returns the content as a String object. This method differs from toString because toString will return an ArrayList with the toString value of the Chunks in this Phrase.- Returns:
- the content
-
isEmpty
public boolean isEmpty()
Checks is thisPhrasecontains no or 1 emptyChunk.
-
getHyphenation
public HyphenationEvent getHyphenation()
Getter for the hyphenation settings.- Returns:
- a HyphenationEvent
- Since:
- 2.1.2
-
setHyphenation
public void setHyphenation(HyphenationEvent hyphenation)
Setter for the hyphenation.- Parameters:
hyphenation- a HyphenationEvent instance- Since:
- 2.1.2
-
getTabSettings
public TabSettings getTabSettings()
Getter for the tab stops settings.- Returns:
- a HyphenationEvent
- Since:
- 5.4.1
-
setTabSettings
public void setTabSettings(TabSettings tabSettings)
Setter for the tab stops.- Parameters:
tabSettings- tab settings- Since:
- 5.4.1
-
getInstance
public static final Phrase getInstance(java.lang.String string)
Gets a special kind of Phrase that changes some characters into corresponding symbols.- Parameters:
string-- Returns:
- a newly constructed Phrase
-
getInstance
public static final Phrase getInstance(int leading, java.lang.String string)
Gets a special kind of Phrase that changes some characters into corresponding symbols.- Parameters:
leading-string-- Returns:
- a newly constructed Phrase
-
getInstance
public static final Phrase getInstance(int leading, java.lang.String string, Font font)
Gets a special kind of Phrase that changes some characters into corresponding symbols.- Parameters:
leading-string-font-- Returns:
- a newly constructed Phrase
-
trim
public boolean trim()
-
-