AWT Font Class

Advertisements


Introduction

The Font class states fonts, which are used to render text in a visible way.

Class declaration

Following is the declaration for java.awt.Font class:

public class Font
   extends Object
      implements Serializable

Field

Following are the fields for java.awt.geom.Arc2D class:

  • static int BOLD -- The bold style constant.

  • static int CENTER_BASELINE --The baseline used in ideographic scripts like Chinese, Japanese, and Korean when laying out text.

  • static String DIALOG --A String constant for the canonical family name of the logical font "Dialog".

  • static String DIALOG_INPUT --A String constant for the canonical family name of the logical font "DialogInput".

  • static int HANGING_BASELINE -- The baseline used in Devanigiri and similar scripts when laying out text.

  • static int ITALIC -- The italicized style constant.

  • static int LAYOUT_LEFT_TO_RIGHT -- A flag to layoutGlyphVector indicating that text is left-to-right as determined by Bidi analysis.

  • static int LAYOUT_NO_LIMIT_CONTEXT -- A flag to layoutGlyphVector indicating that text in the char array after the indicated limit should not be examined.

  • static int LAYOUT_NO_START_CONTEXT -- A flag to layoutGlyphVector indicating that text in the char array before the indicated start should not be examined.

  • static int LAYOUT_RIGHT_TO_LEFT -- A flag to layoutGlyphVector indicating that text is right-to-left as determined by Bidi analysis.

  • static String MONOSPACED -- A String constant for the canonical family name of the logical font "Monospaced".

  • protected String name -- The logical name of this Font, as passed to the constructor.

  • static int PLAIN --The plain style constant.

  • protected float pointSize -- The point size of this Font in float.

  • static int ROMAN_BASELINE --The baseline used in most Roman scripts when laying out text.

  • static String SANS_SERIF -- A String constant for the canonical family name of the logical font "SansSerif".

  • static String SERIF -- A String constant for the canonical family name of the logical font "Serif".

  • protected int size --The point size of this Font, rounded to integer.

  • protected int style -- The style of this Font, as passed to the constructor.

  • static int TRUETYPE_FONT -- Identify a font resource of type TRUETYPE.

  • static int TYPE1_FONT -- Identify a font resource of type TYPE1.

Class constructors

S.N.Constructor & Description
1protected Font() ()
Creates a new Font from the specified font.
2Font(Map<? extends AttributedCharacterIterator.Attribute,?> attributes)
Creates a new Font from the specified font.
3Font(String name, int style, int size)
Creates a new Font from the specified font.

Class methods

S.N.Method & Description
1boolean canDisplay(char c)
Checks if this Font has a glyph for the specified character.
2boolean canDisplay(int codePoint)
Checks if this Font has a glyph for the specified character.
3int canDisplayUpTo(char[] text, int start, int limit)
Indicates whether or not this Font can display the characters in the specified text starting at start and ending at limit.
4int canDisplayUpTo(CharacterIterator iter, int start, int limit)
Indicates whether or not this Font can display the text specified by the iter starting at start and ending at limit.
5int canDisplayUpTo(String str)
Indicates whether or not this Font can display a specified String.
6static Font createFont(int fontFormat, File fontFile)
Returns a new Font using the specified font type and the specified font file.
7static Font createFont(int fontFormat, InputStream fontStream)
Returns a new Font using the specified font type and input data.
8GlyphVector createGlyphVector(FontRenderContext frc, char[] chars)
Creates a GlyphVector by mapping characters to glyphs one-to-one based on the Unicode cmap in this Font.
9GlyphVector createGlyphVector(FontRenderContext frc, CharacterIterator ci)
Creates a GlyphVector by mapping the specified characters to glyphs one-to-one based on the Unicode cmap in this Font.
10GlyphVector createGlyphVector(FontRenderContext frc, int[] glyphCodes)
Creates a GlyphVector by mapping characters to glyphs one-to-one based on the Unicode cmap in this Font.
11GlyphVector createGlyphVector(FontRenderContext frc, String str)
Creates a GlyphVector by mapping characters to glyphs one-to-one based on the Unicode cmap in this Font.
12static Font decode(String str)
Returns the Font that the str argument describes.
13Font deriveFont(AffineTransform trans)
Creates a new Font object by replicating the current Font object and applying a new transform to it.
14Font deriveFont(float size)
Creates a new Font object by replicating the current Font object and applying a new size to it.
15Font deriveFont(int style)
Creates a new Font object by replicating the current Font object and applying a new style to it.
16Font deriveFont(int style, AffineTransform trans)
Creates a new Font object by replicating this Font object and applying a new style and transform.
17Font deriveFont(int style, float size)
Creates a new Font object by replicating this Font object and applying a new style and size.
18Font deriveFont(Map<? extends AttributedCharacterIterator.Attribute,?> attributes)
Creates a new Font object by replicating the current Font object and applying a new set of font attributes to it.
19boolean equals(Object obj)
Compares this Font object to the specified Object.
20protected void finalize()
Disposes the native Font object.
21Map<TextAttribute,?> getAttributes()
Returns a map of font attributes available in this Font.
22AttributedCharacterIterator.Attribute[] getAvailableAttributes()
Returns the keys of all the attributes supported by this Font.
23byte getBaselineFor(char c)
Returns the baseline appropriate for displaying this character.
24String getFamily()
Returns the family name of this Font.
25String getFamily(Locale l)
Returns the family name of this Font, localized for the specified locale.
26static Font getFont(Map<? extends AttributedCharacterIterator.Attribute,?> attributes)
Returns a Font appropriate to the attributes.
27static Font getFont(String nm)
Returns a Font object fom the system properties list.
28static Font getFont(String nm, Font font)
Gets the specified Font from the system properties list.
29String getFontName()
Returns the font face name of this Font.
30String getFontName(Locale l)
Returns the font face name of the Font, localized for the specified locale.
31float getItalicAngle()
Returns the italic angle of this Font.
32LineMetrics getLineMetrics(char[] chars, int beginIndex, int limit, FontRenderContext frc)
Returns a LineMetrics object created with the specified arguments.
33LineMetrics getLineMetrics(CharacterIterator ci, int beginIndex, int limit, FontRenderContext frc)
Returns a LineMetrics object created with the specified arguments.
34LineMetrics getLineMetrics(String str, FontRenderContext frc)
Returns a LineMetrics object created with the specified String and FontRenderContext.
35LineMetrics getLineMetrics(String str, int beginIndex, int limit, FontRenderContext frc)
Returns a LineMetrics object created with the specified arguments.
36Rectangle2D getMaxCharBounds(FontRenderContext frc)
Returns the bounds for the character with the maximum bounds as defined in the specified FontRenderContext.
37int getMissingGlyphCode()
Returns the glyphCode which is used when this Font does not have a glyph for a specified unicode code point.
38String getName()
Returns the logical name of this Font.
39int getNumGlyphs()
Returns the number of glyphs in this Font.
40java.awt.peer.FontPeer getPeer()
Deprecated. Font rendering is now platform independent.
41String getPSName()
Returns the postscript name of this Font.
42int getSize()
Returns the point size of this Font, rounded to an integer.
43float getSize2D()
Returns the point size of this Font in float value.
44Rectangle2D getStringBounds(char[] chars, int beginIndex, int limit, FontRenderContext frc)
Returns the logical bounds of the specified array of characters in the specified FontRenderContext.
45Rectangle2D getStringBounds(CharacterIterator ci, int beginIndex, int limit, FontRenderContext frc)
Returns the logical bounds of the characters indexed in the specified CharacterIterator in the specified FontRenderContext.
46Rectangle2D getStringBounds(String str, FontRenderContext frc)
Returns the logical bounds of the specified String in the specified FontRenderContext.
47Rectangle2D getStringBounds(String str, int beginIndex, int limit, FontRenderContext frc)
Returns the logical bounds of the specified String in the specified FontRenderContext.
48int getStyle()
Returns the style of this Font.
49AffineTransform getTransform()
Returns a copy of the transform associated with this Font.
50int hashCode()
Returns a hashcode for this Font.
51boolean hasLayoutAttributes()
Return true if this Font contains attributes that require extra layout processing.
52boolean hasUniformLineMetrics()
Checks whether or not this Font has uniform line metrics.
53boolean isBold()
Indicates whether or not this Font object's style is BOLD.
54boolean isItalic()
Indicates whether or not this Font object's style is ITALIC.
55boolean isPlain()
Indicates whether or not this Font object's style is PLAIN.
56boolean isTransformed()
Indicates whether or not this Font object has a transform that affects its size in addition to the Size attribute.
57GlyphVector layoutGlyphVector(FontRenderContext frc, char[] text, int start, int limit, int flags)
Returns a new GlyphVector object, performing full layout of the text if possible.
58String toString()
Converts this Font object to a String representation.

Methods inherited

This class inherits methods from the following classes:

  • java.lang.Object

Font Example

Create the following java program using any editor of your choice in say D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class AWTGraphicsDemo extends Frame {
       
   public AWTGraphicsDemo(){
      super("Java AWT Examples");
      prepareGUI();
   }

   public static void main(String[] args){
      AWTGraphicsDemo  awtGraphicsDemo = new AWTGraphicsDemo();  
      awtGraphicsDemo.setVisible(true);
   }

   private void prepareGUI(){
      setSize(400,400);
      addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      }); 
   }    

   @Override
   public void paint(Graphics g) {
      Graphics2D g2 = (Graphics2D)g;        
      Font plainFont = new Font("Serif", Font.PLAIN, 24);        
      g2.setFont(plainFont);
      g2.drawString("Welcome to TutorialsPoint", 50, 70); 
      Font italicFont = new Font("Serif", Font.ITALIC, 24);        
      g2.setFont(italicFont);
      g2.drawString("Welcome to TutorialsPoint", 50, 120); 
      Font boldFont = new Font("Serif", Font.BOLD, 24);        
      g2.setFont(boldFont);
      g2.drawString("Welcome to TutorialsPoint", 50, 170); 
      Font boldItalicFont = new Font("Serif", Font.BOLD+Font.ITALIC, 24);        
      g2.setFont(boldItalicFont);
      g2.drawString("Welcome to TutorialsPoint", 50, 220); 
   }
}

Compile the program using command prompt. Go to D:/ > AWT and type the following command.

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

If no error comes that means compilation is successful. Run the program using following command.

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

Verify the following output

AWT Font

Advertisements
Advertisements