2 out of 8 rated this helpful - Rate this topic

Font Class

Defines a particular format for text, including font face, size, and style attributes. This class cannot be inherited.

System.Object
  System.MarshalByRefObject
    System.Drawing.Font

Namespace:  System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)
[SerializableAttribute]
[TypeConverterAttribute(typeof(FontConverter))]
[ComVisibleAttribute(true)]
public sealed class Font : MarshalByRefObject, ICloneable, 
	ISerializable, IDisposable

The Font type exposes the following members.

  Name Description
Public method Font(Font, FontStyle) Initializes a new Font that uses the specified existing Font and FontStyle enumeration.
Public method Font(FontFamily, Single) Initializes a new Font using a specified size.
Public method Font(String, Single) Initializes a new Font using a specified size.
Public method Font(FontFamily, Single, FontStyle) Initializes a new Font using a specified size and style.
Public method Font(FontFamily, Single, GraphicsUnit) Initializes a new Font using a specified size and unit. Sets the style to FontStyle.Regular.
Public method Font(String, Single, FontStyle) Initializes a new Font using a specified size and style.
Public method Font(String, Single, GraphicsUnit) Initializes a new Font using a specified size and unit. The style is set to FontStyle.Regular.
Public method Font(FontFamily, Single, FontStyle, GraphicsUnit) Initializes a new Font using a specified size, style, and unit.
Public method Font(String, Single, FontStyle, GraphicsUnit) Initializes a new Font using a specified size, style, and unit.
Public method Font(FontFamily, Single, FontStyle, GraphicsUnit, Byte) Initializes a new Font using a specified size, style, unit, and character set.
Public method Font(String, Single, FontStyle, GraphicsUnit, Byte) Initializes a new Font using a specified size, style, unit, and character set.
Public method Font(FontFamily, Single, FontStyle, GraphicsUnit, Byte, Boolean) Initializes a new Font using a specified size, style, unit, and character set.
Public method Font(String, Single, FontStyle, GraphicsUnit, Byte, Boolean) Initializes a new Font using the specified size, style, unit, and character set.
Top
  Name Description
Public property Bold Gets a value that indicates whether this Font is bold.
Public property FontFamily Gets the FontFamily associated with this Font.
Public property GdiCharSet Gets a byte value that specifies the GDI character set that this Font uses.
Public property GdiVerticalFont Gets a Boolean value that indicates whether this Font is derived from a GDI vertical font.
Public property Height Gets the line spacing of this font.
Public property IsSystemFont Gets a value indicating whether the font is a member of SystemFonts.
Public property Italic Gets a value that indicates whether this font has the italic style applied.
Public property Name Gets the face name of this Font.
Public property OriginalFontName Infrastructure. Gets the name of the font originally specified.
Public property Size Gets the em-size of this Font measured in the units specified by the Unit property.
Public property SizeInPoints Gets the em-size, in points, of this Font.
Public property Strikeout Gets a value that indicates whether this Font specifies a horizontal line through the font.
Public property Style Gets style information for this Font.
Public property SystemFontName Gets the name of the system font if the IsSystemFont property returns true.
Public property Underline Gets a value that indicates whether this Font is underlined.
Public property Unit Gets the unit of measure for this Font.
Top
  Name Description
Public method Clone Creates an exact copy of this Font.
Public method CreateObjRef Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.)
Public method Dispose Releases all resources used by this Font.
Public method Equals Indicates whether the specified object is a Font and has the same FontFamily, GdiVerticalFont, GdiCharSet, Style, Size, and Unit property values as this Font. (Overrides Object.Equals(Object).)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method Static member FromHdc Creates a Font from the specified Windows handle to a device context.
Public method Static member FromHfont Creates a Font from the specified Windows handle.
Public method Static member FromLogFont(Object) Creates a Font from the specified GDI logical font (LOGFONT) structure.
Public method Static member FromLogFont(Object, IntPtr) Creates a Font from the specified GDI logical font (LOGFONT) structure.
Public method GetHashCode Gets the hash code for this Font. (Overrides Object.GetHashCode().)
Public method GetHeight() Returns the line spacing, in pixels, of this font.
Public method GetHeight(Graphics) Returns the line spacing, in the current unit of a specified Graphics, of this font.
Public method GetHeight(Single) Returns the height, in pixels, of this Font when drawn to a device with the specified vertical resolution.
Public method GetLifetimeService Retrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method InitializeLifetimeService Obtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Protected method MemberwiseClone() Creates a shallow copy of the current Object. (Inherited from Object.)
Protected method MemberwiseClone(Boolean) Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.)
Public method ToHfont Returns a handle to this Font.
Public method ToLogFont(Object) Creates a GDI logical font (LOGFONT) structure from this Font.
Public method ToLogFont(Object, Graphics) Creates a GDI logical font (LOGFONT) structure from this Font.
Public method ToString Returns a human-readable string representation of this Font. (Overrides Object.ToString().)
Top
  Name Description
Explicit interface implemetation Private method ISerializable.GetObjectData Populates a SerializationInfo with the data needed to serialize the target object.
Top

For more information about how to construct fonts, see How to: Construct Font Families and Fonts. Windows Forms applications support TrueType fonts and have limited support for OpenType fonts. If you attempt to use a font that is not supported, or the font is not installed on the machine that is running the application, the Microsoft Sans Serif font will be substituted.

The following code example demonstrates how to use the Font constructor and the Size, SizeInPoints, and Unit properties. This example is designed to be used with a Windows Form that contains a ComboBox named ComboBox1 that is populated with the strings "Bigger" and "Smaller" and a Label named Label1. Paste the following code into the form and associate the ComboBox1_SelectedIndexChanged method with the SelectedIndexChanged event of the ComboBox control.


private void ComboBox1_SelectedIndexChanged(System.Object sender, 
    System.EventArgs e)
{

    // Cast the sender object back to a ComboBox.
    ComboBox ComboBox1 = (ComboBox) sender;

    // Retrieve the selected item.
    string selectedString = (string) ComboBox1.SelectedItem;

    // Convert it to lowercase.
    selectedString = selectedString.ToLower();

    // Declare the current size.
    float currentSize;

    // Switch on the selected item. 
    switch(selectedString)
    {

            // If Bigger is selected, get the current size from the 
            // Size property and increase it. Reset the font to the
            //  new size, using the current unit.
        case "bigger":
            currentSize = Label1.Font.Size;
            currentSize += 2.0F;
            Label1.Font = new Font(Label1.Font.Name, currentSize, 
                Label1.Font.Style, Label1.Font.Unit);

            // If Smaller is selected, get the current size, in points,
            // and decrease it by 1.  Reset the font with the new size
            // in points.
            break;
        case "smaller":
            currentSize = Label1.Font.SizeInPoints;
            currentSize -= 1;
            Label1.Font = new Font(Label1.Font.Name, currentSize, 
                Label1.Font.Style);
            break;
    }
}


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ