Package com.lowagie.text.rtf.style
Class RtfFont
- java.lang.Object
-
- com.lowagie.text.Font
-
- com.lowagie.text.rtf.style.RtfFont
-
- All Implemented Interfaces:
RtfBasicElement
,RtfExtendedElement
,com.lowagie.text.RtfElementInterface
,java.lang.Comparable
- Direct Known Subclasses:
RtfParagraphStyle
public class RtfFont extends com.lowagie.text.Font implements RtfExtendedElement
The RtfFont class stores one font for an rtf document. It extends Font, so can be set as a font, to allow adding of fonts with arbitrary names. BaseFont fontname handling contributed by Craig Fleming. Various fixes Renaud Michel, Werner Daehn. Version: $Id: RtfFont.java 4008 2009-07-07 09:56:52Z blowagie $
-
-
Field Summary
Fields Modifier and Type Field Description private int
charset
The character set to use for this fontprivate RtfColor
color
The color of this fontstatic java.lang.String
DEFAULT_FONT
Default fontprotected RtfDocument
document
The RtfDocument this RtfFont belongs to.private static byte[]
FONT_BOLD
Constant for the bold flagprivate static byte[]
FONT_CHARSET
Constant for the charsetprivate static byte[]
FONT_DOUBLE_STRIKETHROUGH
Constant for the double strikethrough flagprivate static byte[]
FONT_EMBOSSED
Constant for the embossed flagprivate static byte[]
FONT_ENGRAVED
Constant for the engraved flagprivate static byte[]
FONT_FAMILY
Constant for the font family to use ("froman")private static byte[]
FONT_HIDDEN
Constant for hidden text flagprivate static byte[]
FONT_ITALIC
Constant for the italic flagprivate static byte[]
FONT_OUTLINE
Constant for the outline flagprivate static byte[]
FONT_SHADOW
Constant for the shadow flagstatic byte[]
FONT_SIZE
Constant for the font sizeprivate static byte[]
FONT_STRIKETHROUGH
Constant for the strikethrough flagprivate static byte[]
FONT_UNDERLINE
Constant for the underline flagprivate java.lang.String
fontName
The font name.private int
fontNumber
The number of this fontprivate int
fontSize
The font size.private int
fontStyle
The font style.static int
STYLE_BOLD
Constant for a bold fontstatic int
STYLE_DOUBLE_STRIKETHROUGH
Constant for a double strikethrough fontstatic int
STYLE_EMBOSSED
Constant for an embossed fontstatic int
STYLE_ENGRAVED
Constant for an engraved fontstatic int
STYLE_HIDDEN
Constant for a font that hides the actual text.static int
STYLE_ITALIC
Constant for an italic fontstatic int
STYLE_NONE
Constant for a plain fontstatic int
STYLE_OUTLINE
Constant for an outlined fontstatic int
STYLE_SHADOW
Constant for a shadowed fontstatic int
STYLE_STRIKETHROUGH
Constant for a strikethrough fontstatic int
STYLE_UNDERLINE
Constant for an underlined font-
Fields inherited from class com.lowagie.text.Font
BOLD, BOLDITALIC, COURIER, DEFAULTSIZE, HELVETICA, ITALIC, NORMAL, STRIKETHRU, SYMBOL, TIMES_ROMAN, UNDEFINED, UNDERLINE, ZAPFDINGBATS
-
Fields inherited from interface com.lowagie.text.rtf.RtfBasicElement
CLOSE_GROUP, COMMA_DELIMITER, DELIMITER, OPEN_GROUP, TWIPS_FACTOR
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
RtfFont(RtfDocument doc, int fontNumber)
Special constructor for the default fontRtfFont(RtfDocument doc, com.lowagie.text.Font font)
Constructs a RtfFont from a com.lowagie.text.FontRtfFont(java.lang.String fontName)
Constructs a RtfFont with the given font name and all other properties at their default values.RtfFont(java.lang.String fontName, float size)
Constructs a RtfFont with the given font name and font size and all other properties at their default values.RtfFont(java.lang.String fontName, float size, int style)
Constructs a RtfFont with the given font name, font size and font style and the default color.RtfFont(java.lang.String fontName, float size, int style, java.awt.Color color)
Constructs a RtfFont with the given font name, font size, font style and color.RtfFont(java.lang.String fontName, float size, int style, java.awt.Color color, int charset)
Constructs a RtfFont with the given font name, font size, font style, color and charset.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(java.lang.Object object)
Compares thisRtfFont
to either aFont
or anRtfFont
.com.lowagie.text.Font
difference(com.lowagie.text.Font font)
Replaces the attributes that are equal to null with the attributes of a given font.boolean
equals(java.lang.Object obj)
Tests for equality of RtfFonts.int
getCharset()
Gets the charset used for constructing this RtfFont.java.lang.String
getFamilyname()
java.lang.String
getFontName()
Gets the font name of this RtfFontint
getFontNumber()
Gets the font number of this RtfFontint
getFontSize()
Gets the font size of this RtfFontint
getFontStyle()
Gets the font style of this RtfFontint
hashCode()
Returns the hash code of this RtfFont.protected byte[]
intToByteArray(int i)
Transforms an integer into its String representation and then returns the bytes of that string.boolean
isStandardFont()
TheRtfFont
is never a standard font.void
setCharset(int charset)
Sets the charset used for constructing this RtfFont.void
setColor(int red, int green, int blue)
void
setColor(java.awt.Color color)
void
setFamily(java.lang.String family)
protected void
setFontName(java.lang.String fontName)
Sets the font name of this RtfFont.void
setInHeader(boolean inHeader)
Unusedvoid
setInTable(boolean inTable)
Unusedvoid
setRtfDocument(RtfDocument doc)
Sets the RtfDocument this RtfFont belongs tovoid
setSize(float size)
void
setStyle(int style)
void
setStyle(java.lang.String style)
private void
setToDefaultFamily(java.lang.String familyname)
Sets the correct font name from the family name.void
writeBegin(java.io.OutputStream result)
Writes the font beginningvoid
writeContent(java.io.OutputStream out)
unusedvoid
writeDefinition(java.io.OutputStream result)
Writes the font definitionvoid
writeEnd(java.io.OutputStream result)
Write the font end-
Methods inherited from class com.lowagie.text.Font
getBaseFont, getBaseFontStyle, getCalculatedBaseFont, getCalculatedLeading, getCalculatedSize, getCalculatedStyle, getColor, getCombinedStyle, getFamily, getFamilyIndex, getFontStyleFromName, getSize, getStyle, getStyleValue, isBold, isItalic, isStrikethru, isUnderlined
-
-
-
-
Field Detail
-
FONT_FAMILY
private static final byte[] FONT_FAMILY
Constant for the font family to use ("froman")
-
FONT_CHARSET
private static final byte[] FONT_CHARSET
Constant for the charset
-
FONT_SIZE
public static final byte[] FONT_SIZE
Constant for the font size
-
FONT_BOLD
private static final byte[] FONT_BOLD
Constant for the bold flag
-
FONT_ITALIC
private static final byte[] FONT_ITALIC
Constant for the italic flag
-
FONT_UNDERLINE
private static final byte[] FONT_UNDERLINE
Constant for the underline flag
-
FONT_STRIKETHROUGH
private static final byte[] FONT_STRIKETHROUGH
Constant for the strikethrough flag
-
FONT_DOUBLE_STRIKETHROUGH
private static final byte[] FONT_DOUBLE_STRIKETHROUGH
Constant for the double strikethrough flag
-
FONT_SHADOW
private static final byte[] FONT_SHADOW
Constant for the shadow flag
-
FONT_OUTLINE
private static final byte[] FONT_OUTLINE
Constant for the outline flag
-
FONT_EMBOSSED
private static final byte[] FONT_EMBOSSED
Constant for the embossed flag
-
FONT_ENGRAVED
private static final byte[] FONT_ENGRAVED
Constant for the engraved flag
-
FONT_HIDDEN
private static final byte[] FONT_HIDDEN
Constant for hidden text flag
-
STYLE_NONE
public static final int STYLE_NONE
Constant for a plain font- See Also:
- Constant Field Values
-
STYLE_BOLD
public static final int STYLE_BOLD
Constant for a bold font- See Also:
- Constant Field Values
-
STYLE_ITALIC
public static final int STYLE_ITALIC
Constant for an italic font- See Also:
- Constant Field Values
-
STYLE_UNDERLINE
public static final int STYLE_UNDERLINE
Constant for an underlined font- See Also:
- Constant Field Values
-
STYLE_STRIKETHROUGH
public static final int STYLE_STRIKETHROUGH
Constant for a strikethrough font- See Also:
- Constant Field Values
-
STYLE_DOUBLE_STRIKETHROUGH
public static final int STYLE_DOUBLE_STRIKETHROUGH
Constant for a double strikethrough font- See Also:
- Constant Field Values
-
STYLE_SHADOW
public static final int STYLE_SHADOW
Constant for a shadowed font- See Also:
- Constant Field Values
-
STYLE_OUTLINE
public static final int STYLE_OUTLINE
Constant for an outlined font- See Also:
- Constant Field Values
-
STYLE_EMBOSSED
public static final int STYLE_EMBOSSED
Constant for an embossed font- See Also:
- Constant Field Values
-
STYLE_ENGRAVED
public static final int STYLE_ENGRAVED
Constant for an engraved font- See Also:
- Constant Field Values
-
STYLE_HIDDEN
public static final int STYLE_HIDDEN
Constant for a font that hides the actual text.- See Also:
- Constant Field Values
-
DEFAULT_FONT
public static final java.lang.String DEFAULT_FONT
Default font- Since:
- 2.1.7
- See Also:
- Constant Field Values
-
fontName
private java.lang.String fontName
The font name. Defaults to "Times New Roman"
-
fontSize
private int fontSize
The font size. Defaults to 10
-
fontStyle
private int fontStyle
The font style. Defaults to STYLE_NONE
-
fontNumber
private int fontNumber
The number of this font
-
color
private RtfColor color
The color of this font
-
charset
private int charset
The character set to use for this font
-
document
protected RtfDocument document
The RtfDocument this RtfFont belongs to.
-
-
Constructor Detail
-
RtfFont
public RtfFont(java.lang.String fontName)
Constructs a RtfFont with the given font name and all other properties at their default values.- Parameters:
fontName
- The font name to use
-
RtfFont
public RtfFont(java.lang.String fontName, float size)
Constructs a RtfFont with the given font name and font size and all other properties at their default values.- Parameters:
fontName
- The font name to usesize
- The font size to use
-
RtfFont
public RtfFont(java.lang.String fontName, float size, int style)
Constructs a RtfFont with the given font name, font size and font style and the default color.- Parameters:
fontName
- The font name to usesize
- The font size to usestyle
- The font style to use
-
RtfFont
public RtfFont(java.lang.String fontName, float size, int style, java.awt.Color color)
Constructs a RtfFont with the given font name, font size, font style and color.- Parameters:
fontName
- The font name to usesize
- the font size to usestyle
- The font style to usecolor
- The font color to use
-
RtfFont
public RtfFont(java.lang.String fontName, float size, int style, java.awt.Color color, int charset)
Constructs a RtfFont with the given font name, font size, font style, color and charset. This can be used when generating non latin-1 text.- Parameters:
fontName
- The font name to usesize
- the font size to usestyle
- The font style to usecolor
- The font color to usecharset
- The charset of the font content
-
RtfFont
protected RtfFont(RtfDocument doc, int fontNumber)
Special constructor for the default font- Parameters:
doc
- The RtfDocument this font appears infontNumber
- The id of this font
-
RtfFont
public RtfFont(RtfDocument doc, com.lowagie.text.Font font)
Constructs a RtfFont from a com.lowagie.text.Font- Parameters:
doc
- The RtfDocument this font appears infont
- The Font to use as a base
-
-
Method Detail
-
writeDefinition
public void writeDefinition(java.io.OutputStream result) throws java.io.IOException
Writes the font definition- Specified by:
writeDefinition
in interfaceRtfExtendedElement
- Parameters:
result
- TheOutputStream
to write the element definition to- Throws:
java.io.IOException
-
writeBegin
public void writeBegin(java.io.OutputStream result) throws java.io.IOException
Writes the font beginning- Parameters:
result
- TheOutputStream
to write to.- Throws:
java.io.IOException
- On i/o errors.
-
writeEnd
public void writeEnd(java.io.OutputStream result) throws java.io.IOException
Write the font end- Parameters:
result
- TheOutputStream
to write to.- Throws:
java.io.IOException
- On i/o errors.
-
writeContent
public void writeContent(java.io.OutputStream out) throws java.io.IOException
unused- Specified by:
writeContent
in interfaceRtfBasicElement
- Parameters:
out
- TheOutputStream
to write the content to- Throws:
java.io.IOException
-
equals
public boolean equals(java.lang.Object obj)
Tests for equality of RtfFonts. RtfFonts are equal if their fontName, fontSize, fontStyle and fontSuperSubscript are equal- Overrides:
equals
in classjava.lang.Object
- Parameters:
obj
- The RtfFont to compare with this RtfFont- Returns:
True
if the RtfFonts are equal,false
otherwise
-
hashCode
public int hashCode()
Returns the hash code of this RtfFont. The hash code is the hash code of the string containing the font name + font size + "-" + the font style + "-" + the font super/supscript value.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- The hash code of this RtfFont
-
getFontName
public java.lang.String getFontName()
Gets the font name of this RtfFont- Returns:
- The font name
-
setFontName
protected void setFontName(java.lang.String fontName)
Sets the font name of this RtfFont.- Parameters:
fontName
- The font name to use
-
getFamilyname
public java.lang.String getFamilyname()
- Overrides:
getFamilyname
in classcom.lowagie.text.Font
- See Also:
Font.getFamilyname()
-
setFamily
public void setFamily(java.lang.String family)
- Overrides:
setFamily
in classcom.lowagie.text.Font
- See Also:
Font.setFamily(String)
-
setToDefaultFamily
private void setToDefaultFamily(java.lang.String familyname)
Sets the correct font name from the family name.- Parameters:
familyname
- The family name to set the name to.
-
getFontSize
public int getFontSize()
Gets the font size of this RtfFont- Returns:
- The font size
-
setSize
public void setSize(float size)
- Overrides:
setSize
in classcom.lowagie.text.Font
- See Also:
Font.setSize(float)
-
getFontStyle
public int getFontStyle()
Gets the font style of this RtfFont- Returns:
- The font style
-
setStyle
public void setStyle(int style)
- Overrides:
setStyle
in classcom.lowagie.text.Font
- See Also:
Font.setStyle(int)
-
setStyle
public void setStyle(java.lang.String style)
- Overrides:
setStyle
in classcom.lowagie.text.Font
- See Also:
Font.setStyle(String)
-
getCharset
public int getCharset()
Gets the charset used for constructing this RtfFont.- Returns:
- The charset of this RtfFont.
-
setCharset
public void setCharset(int charset)
Sets the charset used for constructing this RtfFont.- Parameters:
charset
- The charset to use.
-
getFontNumber
public int getFontNumber()
Gets the font number of this RtfFont- Returns:
- The font number
-
setRtfDocument
public void setRtfDocument(RtfDocument doc)
Sets the RtfDocument this RtfFont belongs to- Specified by:
setRtfDocument
in interfaceRtfBasicElement
- Parameters:
doc
- The RtfDocument to use
-
setInTable
public void setInTable(boolean inTable)
Unused- Specified by:
setInTable
in interfaceRtfBasicElement
- Parameters:
inTable
-
-
setInHeader
public void setInHeader(boolean inHeader)
Unused- Specified by:
setInHeader
in interfaceRtfBasicElement
- Parameters:
inHeader
-
-
setColor
public void setColor(java.awt.Color color)
- Overrides:
setColor
in classcom.lowagie.text.Font
- See Also:
Font.setColor(Color)
-
setColor
public void setColor(int red, int green, int blue)
- Overrides:
setColor
in classcom.lowagie.text.Font
- See Also:
Font.setColor(int, int, int)
-
intToByteArray
protected byte[] intToByteArray(int i)
Transforms an integer into its String representation and then returns the bytes of that string.- Parameters:
i
- The integer to convert- Returns:
- A byte array representing the integer
-
difference
public com.lowagie.text.Font difference(com.lowagie.text.Font font)
Replaces the attributes that are equal to null with the attributes of a given font.- Overrides:
difference
in classcom.lowagie.text.Font
- Parameters:
font
- The surrounding font- Returns:
- A RtfFont
-
isStandardFont
public boolean isStandardFont()
TheRtfFont
is never a standard font.- Overrides:
isStandardFont
in classcom.lowagie.text.Font
- Since:
- 2.1.0
-
compareTo
public int compareTo(java.lang.Object object)
Compares thisRtfFont
to either aFont
or anRtfFont
.- Specified by:
compareTo
in interfacejava.lang.Comparable
- Overrides:
compareTo
in classcom.lowagie.text.Font
- Since:
- 2.1.0
-
-