com.golden.gamedev.object.font
Class SystemFont

java.lang.Object
  |
  +--com.golden.gamedev.object.font.SystemFont
All Implemented Interfaces:
GameFont

public class SystemFont
extends Object
implements GameFont


Field Summary
protected  FontMetrics fm
           
protected  Font font
           
 
Fields inherited from interface com.golden.gamedev.object.GameFont
CENTER, JUSTIFY, LEFT, RIGHT
 
Constructor Summary
SystemFont(Font font)
           
SystemFont(Font font, Color color)
           
 
Method Summary
 int drawString(Graphics2D g, String s, int x, int y)
          Draw single line text into graphics context.
 int drawString(Graphics2D g, String s, int alignment, int x, int y, int width)
           
 int drawText(Graphics2D g, String text, int alignment, int x, int y, int width, int vspace, int firstIndent)
          Draw multiple line text into graphics context.
 Color getColor()
           
 int getHeight()
          Returns height of this font.
 int getWidth(char c)
          Returns width of char c using this font.
 int getWidth(String st)
          Returns width of String st using this font.
 void setColor(Color c)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

font

protected final Font font

fm

protected final FontMetrics fm
Constructor Detail

SystemFont

public SystemFont(Font font,
                  Color color)

SystemFont

public SystemFont(Font font)
Method Detail

getColor

public Color getColor()

setColor

public void setColor(Color c)

drawString

public int drawString(Graphics2D g,
                      String s,
                      int x,
                      int y)
Description copied from interface: GameFont
Draw single line text into graphics context.

Specified by:
drawString in interface GameFont
Returns:
bottom x coordinate, used to draw next text.

drawString

public int drawString(Graphics2D g,
                      String s,
                      int alignment,
                      int x,
                      int y,
                      int width)
Specified by:
drawString in interface GameFont

drawText

public int drawText(Graphics2D g,
                    String text,
                    int alignment,
                    int x,
                    int y,
                    int width,
                    int vspace,
                    int firstIndent)
Description copied from interface: GameFont
Draw multiple line text into graphics context.

Example to write two paragraph text:

    // creates bounding box, to ensure the paragraph exactly in the box
    g.drawRect(10, 10, 620, 100);

    int nexty = GameFont.drawText(g,
        "Paragraph one, sample paragraph using GameFont drawText.",
        GameFont.LEFT, 10, 10, 620, 0, 50);

    GameFont.drawText(g,
        "Paragraph two, notice that each paragraph have 50 pixel indentation.",
        GameFont.LEFT,    // left alignment
        10,               // x
        nexty,            // y
        620,              // width
        0,                // no additional vertical spacing
        50);              // 50 pixel indentation
 

Specified by:
drawText in interface GameFont
Parameters:
g - graphics context where the text will be drawn.
text - text to be drawn.
alignment - text alignment: LEFT, RIGHT, CENTER, or JUSTIFY.
x - text x coordinate.
y - text y coordinate.
width - width per line.
vspace - additional vertical spacing, in pixel.
firstIndent - first line indentation, in pixel.
Returns:
bottom y coordinate, used to draw next paragraph.
See Also:
GameFont.LEFT, GameFont.RIGHT, GameFont.CENTER, GameFont.JUSTIFY

getWidth

public int getWidth(String st)
Description copied from interface: GameFont
Returns width of String st using this font.

Specified by:
getWidth in interface GameFont
Returns:
String width, in pixel

getWidth

public int getWidth(char c)
Description copied from interface: GameFont
Returns width of char c using this font.

Specified by:
getWidth in interface GameFont
Returns:
char width, in pixel

getHeight

public int getHeight()
Description copied from interface: GameFont
Returns height of this font.

Specified by:
getHeight in interface GameFont
Returns:
font height, in pixel

toString

public String toString()
Overrides:
toString in class Object